关于双向队列

来源:互联网 发布:unity3d麻将开发思路 编辑:程序博客网 时间:2024/06/06 01:30
#include<stdio.h>#include<iostream>#include<algorithm>#include<cstring>#include<deque>using namespace std;int main(){    deque<int> d;    d.push_back(1);    d.push_back(2);    d.push_back(3);    d.push_front(10);    d.push_front(20);    cout<<d[0]<<" "<<d[1]<<" "<<d[2]<<" "<<d[3]<<" "<<d[4]<<endl;//书上有误,从前面插入并不覆盖,就是从前面插队了。    d.insert(d.begin()+1,88);    cout<<d[0]<<" "<<d[1]<<" "<<d[2]<<endl;    for(int i=0;i<d.size();i++)//以数组的方式输出。    {        cout<<d[i]<<" ";    }    cout<<endl;    deque<int>::iterator it;    for(it=d.begin();it!=d.end();it++)//以迭代器的方式便利。    {        cout<<*it<<endl;    }    deque<int>::reverse_iterator rit;    for(rit=d.rbegin();rit!=d.rend();rit++)//反转一下;    {        cout<<*rit<<" ";    }    cout<<endl;   /* while(!d.empty())    {        cout<<d.front()<<" ";//输出头部        d.pop_front();//从头部删除。    }     while(!d.empty())    {        cout<<d.back()<<" ";//输出尾部。        d.pop_back();//从尾部删除。    }*/    d.erase(d.begin()+1);//删除从0开始第一个位置。     for(it=d.begin();it!=d.end();it++)//以迭代器的方式便利。    {        cout<<*it<<endl;    }    d.clear();//全请空;    cout<<d.size();   return 0;}

0 0
原创粉丝点击