Это не должно быть сложным вопросом, но я просто хотел бы, чтобы кто-нибудь ответил на него, прежде чем я продолжу. Мне просто нужно решить, какую структуру данных использовать на основе этих ожидаемых действий:
- Потребуется часто выполнять итерацию в отсортированном порядке (начиная с головы).
- Потребуется удалить / восстановить произвольные элементы из отсортированного представления.
- Позже я буду часто прибегать к данным и работать с несколькими отсортированными представлениями.
- Также позже я буду часто менять положение элементов в их отсортированных представлениях.
Кстати, это на Java.
Я предполагаю, что я либо буду использовать какой-нибудь настраиваемый набор связанных хешей (чтобы упорядочить ссылки в отсортированном порядке), либо, возможно, просто буду использовать набор деревьев. Но я все еще не совсем уверен. Рекомендации?
Изменить: я полагаю, из-за произвольного удаления / восстановления мне, вероятно, следует придерживаться набора деревьев, верно?
На самом деле, не обязательно. Хм...