Меня попросили реализовать двусвязную очередь, но я знаю, что односвязная очередь проста, и все ее основные функции выполняются в big-Theta 1. В основном я говорю о реализации FIFO (не включая специальные очереди, такие как deque).
Я видел, как другие люди реализуют очередь с использованием реализации с двойной связью, и я знаю, что это требует больше памяти, поскольку для каждого узла требуется 2 указателя (предыдущий и следующий).
Есть ли преимущество двусвязной очереди перед односвязной?!