Приложение к главе 1.1
Некоторые функции для работы с типом данных дек
В отличие от вектора элементы дека не хранятся непрерывно: обычно это реализовано с помощью набора выделенных массивов фиксированного размера.
Хранилище дека обрабатывается автоматически, расширяясь и сужаясь по мере необходимости. Расширение дека дешевле, чем расширение вектора, потому что оно не требует копирования существующих элементов в новый участок памяти.
К элементам дека можно обращаться по индексу.
Сложность (производительность) стандартных операций над двусторонней очередью следующая:
- произвольный доступ — постоянная O(1);
- вставка и удаление элементов с начала и с конца — амортизированная постоянная O(1);
- вставка и удаление элементов — линейная O(n).
Функция |
Действие |
front |
Доступ к первому элементу |
back |
Доступ к последнему элементу |
empty |
Проверяет отсутствие элементов |
size |
Возвращает количество элементов |
push_front |
Вставляет элемент в начало |
pop_front |
Удаляет первый элемент |
push_back |
Вставляет элемент в конец |
pop_back |
Удаляет последний элемент |
clear |
Очищает дек |
insert |
Вставляет элементы по итератору |
erase |
Удаляет элементы по итератору |