Есть ли (хорошо реализованные) навязчивые классы двойных связанных списков, доступные для Java? Или мне самому сделать? У Boost есть это для C ++: http://beta.boost.org/doc/libs/1_40_0/doc/html/boost/intrusive/list.html .
Intrusive list - это контейнер, содержащий ( в данном случае) указатели next и prev внутри элемента, поэтому типичные операции со списком, такие как замена и удаление, могут быть непосредственно нацелены на элементарный класс, а не на класс-контейнер. Есть определенные ситуации, когда навязчивый список - лучшее решение.
Я пытаюсь привести соответствующий пример. Предположим, у меня есть связанные списки L list1 и L list2, принадлежащие разным типам классов X1 и Y2.
класс Q (который не имеет ничего общего или не может легко получить доступ к интерфейсам x1 и Y2 в противном случае) должен делать i) заменить, ii) удалить операцию для элемента e, - Класс-оболочка для элемента e и дополнительные методы для выполнения операций i и ii. Нет.
В основном вопрос не в производительности, а в архитектурной сложности. Это также можно понимать как один из видов ситуации с разделяемыми объектами, когда решение IL избегает необходимости обновления для каждого клиента Lx и Q.
Обратите внимание, что мне НЕ нужна совместимость с другими стандартными контейнерами. Просто общая навязчивая реализация lsit с операциями итерации, добавления, удаления и поиска, используемыми с неизвестным классом элементов.
Спасибо.