Что такое deque в C++?
std::deque (Double-Ended Queue) в языке программирования C++ представляет собой двустороннюю очередь, обеспечивающую эффективный доступ и модификацию элементов как в начале, так и в конце контейнера. Этот контейнер входит в Standard Template Library (STL) и предоставляет гибкий интерфейс для управления данными.
#include <iostream>
#include <deque>
int main() {
// Создание двусторонней очереди целых чисел
std::deque<int> numbers = {1, 2, 3, 4, 5};
// Добавление элемента в начало и конец очереди
numbers.push_front(0);
numbers.push_back(6);
// Вставка элемента перед третьим элементом
auto it = numbers.begin() + 2;
numbers.insert(it, 10);
// Удаление второго и предпоследнего элементов
numbers.erase(numbers.begin() + 1);
numbers.erase(std::prev(numbers.end()));
// Вывод элементов очереди
std::cout << "Deque elements: ";
for (const auto& num : numbers) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
Основные операции с std::deque:
- Добавление элементов: Методы
std::deque::push_front()иstd::deque::push_back()используются для добавления элементов в начало и конец очереди соответственно. - Вставка элементов: Метод
std::deque::insert()позволяет вставлять элементы в любое место очереди. - Удаление элементов: Методы
std::deque::erase()иstd::deque::pop_front()(илиstd::deque::pop_back()) используются для удаления элементов из очереди. - Итерация по очереди: Итерация может быть выполнена с использованием цикла
forили итераторов.
Комментарии