包含头文件<deque>
deque<int> deData; //创建一个双向队列
双向队列可以从头到尾也可以从尾到头、函数与 list 类似:c++ STL容器 --- 双向链表list_小雪菜本菜的博客-CSDN博客_c++ stl 双向链表
#include <deque>
#include <iostream>
#include <string>
using namespace std;
//从头部出来
void pop_front_dequeue(deque<int> dData)
{
while (!dData.empty())
{
cout << dData.front()<<" ";
dData.pop_front();
}
cout << endl;
}
//从尾部出来
void pop_back_dequeue(deque<int> dData)
{
while (!dData.empty())
{
cout << dData.back() << " ";
dData.pop_back();
}
cout << endl;
}
void testDeque()
{
deque<int> deData;
for (int i = 0; i < 3; i++)
{
deData.push_back(i); //尾插法入队
deData.push_front(i); //头插法入队
}
deData.push_back(999);
//0 0
//1 0 0 1
//2 1 0 0 1 2
pop_front_dequeue(deData);
pop_back_dequeue(deData);
}
int main()
{
testDeque();
return 0;
}
/* 输出 */
2 1 0 0 1 2 999
999 2 1 0 0 1 2