STL. Deque
Deque реализует двунаправленную очередь.
Для работы необходимо подключить библиотеку
#include <deque>
Deque входит в пространство имен std, поэтому или пишем std:: или используем пространство имен using namespace std;
deque<int> myDEQ={1,2,3,4};
Как говорилось ранее, deque это гибрид двусвязного списка и динамического массива, по сути это list, где каждый узел представляет собой небольшой vector.
Из преимуществ – более быстрое по отношению к вектору добавление элементов (т.к. нужно менять только «кусочки» данных)
И более быстрая индексация по отношению к list.
Минусы – бОльшие накладные расходы, т.к. реализация стала несколько сложнее.
Deque удобнее использовать при большИх объемах данных, где нужно часто менять данные по всему объему (начало/середина/конец).
Итератор у deque является итератором произвольного доступа.
deque<int>::iterator iter;