Абстрактный тип данных “дек”

Абстрактный тип данных дека определяется следующими структурой и операциями. Как было описано выше, он имеет структуру упорядоченной коллекции элементов, которые могут добавляться и удаляться с любого конца - и с головы, и с хвоста. Операции для дека представлены ниже:

В качестве примера, если мы предположим, что d - это дек, который был создан и всё ещё пуст, то таблица 1 демонстрирует результаты серии операций над ним. Обратите внимание, что содержимое головы располагается справа. Очень важно отслеживать, где голова, а где хвост дека, когда вы перемещаете элементы в и из коллекции, поскольку эти вещи могут быть несколько запутанными.

Таблица 1: Пример операций для дека
Операция Содержимое дека Возвращаемое значение
d.isEmpty() [] True
d.addRear(4) [4]  
d.addRear('dog') ['dog',4,]  
d.addFront('cat') ['dog',4,'cat']  
d.addFront(True) ['dog',4,'cat',True]  
d.size() ['dog',4,'cat',True] 4
d.isEmpty() ['dog',4,'cat',True] False
d.addRear(8.4) [8.4,'dog',4,'cat',True]  
d.removeRear() ['dog',4,'cat',True] 8.4
d.removeFront() ['dog',4,'cat'] True
Next Section - Реализация дека в Python