Мой вопрос очень прост, можно ли использовать С++, реализовать структуру данных списка ссылок без использования указателей (следующих узлов)? Чтобы еще раз квалифицировать свой вопрос, я имею в виду, что можно создать структуру данных Linked-List, используя только экземпляры класса.
Общее определение node может быть таким:
template<typename T>
struct node
{
T t;
node<T>* next;
node<T>* prev;
};
Я знаю std::list
и т.д., мне просто интересно узнать, возможно ли это или нет - и если да, то как? Примеры кода будут высоко оценены.
Дополнительные пояснения:
- Вставки должны быть O (1).
- Обход должен быть не более O (n).
- Реальный node и нулевой node должны быть дифференцируемы.
- Размер связанного списка должен ограничиваться только объемом доступной памяти.