Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy
Контакт для рекламы: @sendme_ads
Post #2493
498
🤔 Что такое deque?
Deque (double-ended queue, двусторонняя очередь) — это последовательный контейнер в C++, который позволяет добавлять и удалять элементы как с начала, так и с конца очереди с постоянной временной сложностью O(1). Контейнер
🚩Основные характеристики:
🟠Быстрый доступ к элементам:
🟠Двусторонняя очередь:
Позволяет эффективно добавлять и удалять элементы как с начала, так и с конца очереди.
🟠Динамический размер:
🟠Не требует смежного хранения:
В отличие от
🚩Основные операции:
🟠Добавление элементов:
🟠Удаление элементов:
🟠Доступ к элементам:
🟠Размер и емкость:
🟠Итераторы:
Поддержка итераторов для прохода по элементам
Ставь 👍 и забирай 📚 Базу знаний
Deque (double-ended queue, двусторонняя очередь) — это последовательный контейнер в C++, который позволяет добавлять и удалять элементы как с начала, так и с конца очереди с постоянной временной сложностью O(1). Контейнер
deque является частью стандартной библиотеки шаблонов (STL) и объявляется в заголовочном файле <deque>.🚩Основные характеристики:
🟠Быстрый доступ к элементам:
deque обеспечивает доступ к элементам по индексу с амортизированной временной сложностью O(1).🟠Двусторонняя очередь:
Позволяет эффективно добавлять и удалять элементы как с начала, так и с конца очереди.
🟠Динамический размер:
deque автоматически изменяет свой размер по мере добавления или удаления элементов, подобно vector.🟠Не требует смежного хранения:
В отличие от
vector, элементы deque могут быть размещены в различных сегментах памяти, что делает его более гибким для частых операций вставки и удаления.🚩Основные операции:
🟠Добавление элементов:
push_back(), push_front()🟠Удаление элементов:
pop_back(), pop_front()🟠Доступ к элементам:
operator[], at(), front(), back()🟠Размер и емкость:
size(), empty(), resize()🟠Итераторы:
Поддержка итераторов для прохода по элементам
#include <iostream>
#include <deque>
int main() {
std::deque<int> dq;
// Добавление элементов в конец
dq.push_back(1);
dq.push_back(2);
dq.push_back(3);
// Добавление элементов в начало
dq.push_front(0);
std::cout << "Deque elements: ";
for (int elem : dq) {
std::cout << elem << " ";
}
std::cout << std::endl;
// Удаление элемента с конца
dq.pop_back();
// Удаление элемента с начала
dq.pop_front();
std::cout << "Deque elements after pop operations: ";
for (int elem : dq) {
std::cout << elem << " ";
}
std::cout << std::endl;
return 0;
}
Ставь 👍 и забирай 📚 Базу знаний