STL 双向队列 deque
原创
©著作权归作者所有:来自51CTO博客作者luer9的原创作品,请联系作者获取转载授权,否则将追究法律责任
deque 双向队列,,,好万能诶。。。感觉结合了 queue和stack。。。hhh
一些基本功能及代码;
#include <iostream>
#include <deque>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <string>
using namespace std;
int main()
{
deque<int > ideq(20);//创建有n条数据的deque
deque<int >::iterator pos;
int i;
for(int i=0;i<20;i++)
{
ideq[i]=i;
}
cout<<"输出deque中的数据:";
for(int i=0;i<20;i++)
{
cout<<ideq[i]<<" ";
}
cout<<endl;
//在头尾加入新的数据
ideq.push_back(50);
ideq.push_front(80);
cout<<"输出deque中的数据:";
for(pos=ideq.begin();pos!=ideq.end();pos++)
{
cout<<(*pos)<<" ";
}cout<<endl;
//查找
int findx=15;
cout<<"查找:"<<findx<<endl;
pos=find(ideq.begin(),ideq.end(),findx);
if(pos!=ideq.end())
cout<<"FIND "<<(*pos)<<" successfully"<<endl;
else cout<<"NOT FIND"<<endl;
//在头尾删除数据
cout<<"..在头尾删除数据..waiting."<<endl;
ideq.pop_back();//尾
ideq.pop_front();//头
cout<<endl;
cout<<"请输出deque中的数据:";
for(pos=ideq.begin();pos!=ideq.end();pos++)
{
cout<<(*pos)<<" ";
}
cout<<endl;
return 0;
}
结果。