Двусторонняя очередь (double-ended queue) на кольцевом буфере. Вставка и удаление с обоих концов — амортизированно O(1), доступ по индексу — O(1).
const deque = new Deque([2, 3]);deque.pushFront(1).pushBack(4);deque.popFront(); // 1deque.at(-1); // 4 Copy
const deque = new Deque([2, 3]);deque.pushFront(1).pushBack(4);deque.popFront(); // 1deque.at(-1); // 4
Добавляет элемент в конец.
Добавляет элемент в начало.
Удаляет и возвращает последний элемент.
Удаляет и возвращает первый элемент.
Элемент по индексу; отрицательный индекс считается с конца.
Двусторонняя очередь (double-ended queue) на кольцевом буфере. Вставка и удаление с обоих концов — амортизированно O(1), доступ по индексу — O(1).
Example