初始化定义容器(可以为int,double,char,string,struct)
deque<int>a; deque<double>a; deque<char>a; deque<string>a; deque<struct>a等
a.push_front(x)函数:将x元素从a数组的头部插入
a.push_back(y)函数:将y元素从a数组的尾部部插入
#include<iostream>
#include<deque>
using namespace std;
int main(){
deque<int>a;//设置空容器x。
int i,x;
for(i=0;i<10;i++){
cin>>x;
a.push_front(x); //将输入的x从头部插入a数组
}
a.push_back(666);//将输入的666从尾部插入a数组
for(i=0;i<a.size();++i){
cout<<a[i]<<" ";//输出数据,你会发现他们是逆序输出的
//他们满足先进后出,后进先出这个特点
}
return 0;
}
a.pop_front()函数:删除a容器头部的一个元素
a.pop_back()函数:删除a容器尾部部的一个元素
#include<iostream>
#include<deque>
using namespace std;
int main(){
deque<int>a;//设置空容器x。
int i,x;
for(i=0;i<10;i++){
cin>>x;
a.push_front(x); //将输入的x从头部插入a数组
}
for(i=0;i<a.size();++i){
cout<<a[i]<<" ";}
cout<<endl;
a.pop_front();//删除a容器头部的一个元素
for(i=0;i<a.size();++i){
cout<<a[i]<<" ";//
}//第三行与第二行相比少了头部的一个元素,
//正是a.pop_front()作用的结果
return 0;
}
以下为在前一篇关于STL(vector)的内容,它的函数全部可以被deque这个容器使用。
(1) a.empty()函数:判断数组a是否为空,若为空则返回1,否则返回0
(2) a.size()函数 :表示a数组的长度
(3) a.push_back(x)函数:表示将数据x插入a数组的尾部
(4) a.insert()函数 :某个位置插入元素,插入几个
第一种格式:a.insert(a,b,c) a表示位置,b表示数量,c表示内容 ,在a位置插入b个c
第二种格式:a.insert(a,c) a表示位置,c表示内容 ,在a位置插入1个c
(5) a.end()函数 :表示a数组的尾地址
(6) a.begin()函数 :表示a数组的首地址
(7)a.pop_back()函数 :删除a数组最后位置的一个元素
(8)a.erase()函数:删除a数组某个位置或某区间内全部元素(区间范围是前闭后开)
a.erase(a.begin()+i,a.end()+j)删除的区间是位置[i,j-1]
(9)a.clear()函数:清除当前容器中所有元素
(10)reverse函数:reverse(a,b):将a和b位置区间内的元素反转(翻转)
(11)sort函数:sort(a,b):将a和b位置区间内的元素按照从小到大的顺序排序(升序)
使用sort和reverse函数要调用这个头文件 #include<algorithm>
新增内容
(12)a.push_front(x)函数:将x元素从a数组的头部插入
(13)a.push_back(y)函数:将y元素从a数组的尾部部插入 同(3)
(14)a.pop_front()函数:删除a容器头部的一个元素
(15)a.pop_back()函数:删除a容器尾部部的一个元素