阅读量:2
双端队列(deque,双向队列)是一种具有队列和栈两种功能的数据结构,可以在队列的两端进行插入和删除操作。在C++中,可以使用标准库中的std::deque
来实现双端队列。
下面是一个简单的示例代码,演示如何使用std::deque
实现双端队列:
#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); // 遍历并打印队列中的元素 for (int i : dq) { std::cout << i << " "; } std::cout << std::endl; // 从队列的头部删除元素 dq.pop_front(); // 从队列的尾部删除元素 dq.pop_back(); // 再次遍历并打印队列中的元素 for (int i : dq) { std::cout << i << " "; } std::cout << std::endl; return 0; }
上面的示例代码首先创建了一个空的双端队列std::deque<int> dq
,然后在队列的尾部和头部插入元素,并打印队列中的元素。接着从队列的头部和尾部删除元素,并再次打印队列中的元素。
通过使用std::deque
,可以方便地实现双端队列,并进行插入、删除等操作。