deque的最重要的特性是在deque两端放置元素和删除元素是高效的,原因在于deque型序列开放了序列的两端,两端都能插入和删除数据。
一、初始化(以存放int型数据的双端队列为例)
deuqe<int> mydeque;//初始化一个空的队列
deuqe<int> mydeque(5);//初始化含有5个元素的队列
deque<int> mydeque(5,1);//初始化一个含有5个元素1的队列
deque<int> mydeque(elsedeque);//用其他队列初始化该队列
deque<int> mydeque(elsedeque.begin(),elsedeque.end());//用其他队列的迭代器初始化本队列
二、容量
返回容量的大小:mydeque.size();
返回容器的最大容量:mydeque.max_size();
调整容器的现有容量:mydeque.resize(n,value);//n为调整后的容量,value为元素
三、成员函数
3.1 赋值
在尾部压入/弹出:mydeque.push_back(元素)/mydeque.pop_back();
在头部压入/弹出:mydeque.push_front(元素)/mydeque.pop_front();
利用[]操作符:mydeque[1]=9;
3.2 迭代器相关函数
正向迭代器:mydeque.begin()/mydeque.end();
反向迭代器:mydeque.rbegin()/mydeque.rend();
返回首尾元素:mydeque.front()/mydeque.back();
3.3 判断是否为空
mydeque.empty();
3.4 随机访问元素
mydeque.at(序号);
3.5 元素的重置
mydeque.assign(...);
3.6 容器元素的交换
mydeque.swap(elsedeque);
3.7 元素的删除
删除某几个或者某个元素:mydeque.erase(...);
清空容器:mydeque.clear();
3.8 查找
deque没有查找的成员函数,可使用标准库中的查找算法进行查找
3.9 逻辑判断操作符
==、<、!=、<=、>、>=
一、初始化(以存放int型数据的双端队列为例)
deuqe<int> mydeque;//初始化一个空的队列
deuqe<int> mydeque(5);//初始化含有5个元素的队列
deque<int> mydeque(5,1);//初始化一个含有5个元素1的队列
deque<int> mydeque(elsedeque);//用其他队列初始化该队列
deque<int> mydeque(elsedeque.begin(),elsedeque.end());//用其他队列的迭代器初始化本队列
二、容量
返回容量的大小:mydeque.size();
返回容器的最大容量:mydeque.max_size();
调整容器的现有容量:mydeque.resize(n,value);//n为调整后的容量,value为元素
三、成员函数
3.1 赋值
在尾部压入/弹出:mydeque.push_back(元素)/mydeque.pop_back();
在头部压入/弹出:mydeque.push_front(元素)/mydeque.pop_front();
利用[]操作符:mydeque[1]=9;
3.2 迭代器相关函数
正向迭代器:mydeque.begin()/mydeque.end();
反向迭代器:mydeque.rbegin()/mydeque.rend();
返回首尾元素:mydeque.front()/mydeque.back();
3.3 判断是否为空
mydeque.empty();
3.4 随机访问元素
mydeque.at(序号);
3.5 元素的重置
mydeque.assign(...);
3.6 容器元素的交换
mydeque.swap(elsedeque);
3.7 元素的删除
删除某几个或者某个元素:mydeque.erase(...);
清空容器:mydeque.clear();
3.8 查找
deque没有查找的成员函数,可使用标准库中的查找算法进行查找
3.9 逻辑判断操作符
==、<、!=、<=、>、>=