STL 双向队列 deque

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;
}

 结果。

猜你喜欢

转载自blog.csdn.net/qq_40046426/article/details/81432515