STL 顺序容器之双端队列
来源:互联网 发布:潍柴发动机 知乎 编辑:程序博客网 时间:2024/05/17 04:09
目录
双端队列是由动态数组实现。
头文件:
#include <deque>
构造方法:
- deque<type> deq 创建一个没有任何元素的双端队列
- deque<type> deq(otherDeq) 用另一个类型相同双端队列初始化该双端队列
- deque<type> deq(size) 初始化一个固定size的双端队列
- deque<type> deq(n, element) 初始化n个相同元素的双端队列
- deque<type> deq(begin,end) 初始化双端队列中的某一段元素,从begin 到 end - 1
双端队列的特有操作(双端对列是顺序容器,顺序容器有容器的共有操作)
- deq.assign(n,elem) 赋值n个元素的拷贝给双端队列
- deq.assign(beg,end) 赋值一段迭代器的值给双端队列
- deq.push_front(elem) 添加一个元素在开头
- deq.pop_front() 删除第一个元素
- deq.at(index) 取固定位置的元素
- deq[index] 取固定位置的元素
- deq.front() 返回第一个元素(不检测容器是否为空)
- deq.back() 返回最后一个元素(不检测容器是否为空)
示例代码:
#include <deque>#include <iostream>#include <algorithm>#include <iterator>using namespace std;int main() {deque<int> intDqe;ostream_iterator<int> screen(cout, " ");// 从双端队列的尾部添加元素intDqe.push_back(13);intDqe.push_back(75);intDqe.push_back(28);intDqe.push_back(35);// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 从双端队列的首部添加元素intDqe.push_front(0);intDqe.push_back(100);// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 从首部删除两个元素intDqe.pop_front();intDqe.pop_front();// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 从尾部删除两个元素intDqe.pop_back();intDqe.pop_back();// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 构造双端队列的迭代器deque<int>::iterator deqIt;deqIt = intDqe.begin();++deqIt;// 插入元素intDqe.insert(deqIt,444);// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 重新赋值,两个相同元素intDqe.assign(2,45);// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;// 从首部和尾部添加元素intDqe.push_front(-10);intDqe.push_back(-1999);// 输出到控制台copy(intDqe.begin(),intDqe.end(),screen);cout << endl;return 0;}
输出结果:
13 75 28 35
0 13 75 28 35 100
75 28 35 100
75 28
75 444 28
45 45
-10 45 45 -1999
5 0
- STL 顺序容器之双端队列
- STL顺序容器之deque双端队列
- STL顺序容器之deque双端队列
- STL顺序容器之双端队列deque
- 【STL】容器 > 顺序容器 > deque(双端队列)
- stl之deque双端队列容器
- C++STL之双端队列容器
- C++ STL 容器技术 之 deque双端队列容器
- C++ STL 容器技术 之 deque双端队列容器
- STL之顺序容器
- STL 之顺序容器
- STL之顺序容器
- STL容器之顺序容器
- STL顺利容器之双端队列(deque)
- STL系列之deque双端队列+vector向量容器
- STL顺序容器-deque(双向队列)
- STL 顺序容器之Vector
- STL 顺序容器之表
- 在JBoss中部署JSF应用时报错"Could not find backup for factory javax.faces.application.ApplicationFactory" 解决方法
- 2014年计算机软考:java程序员面试10道题
- Eigen函数与Matlab函数的对应关系
- 【小学生打字练习软件】_在线网上打字比赛软件系统
- 使用Expression Tree构建带有参数、本地变量和返回值的Lambda
- STL 顺序容器之双端队列
- 章泽天加入微软实习 网友:提升程序员整体形象
- Java桌面程序打包成exe可执行文件
- 我买的书,我读的书
- Ecological Premium - UVa10300
- 编程修养 值得看一下,先mark一下,回头看
- HDFS HA: 高可靠性分布式存储系统解决方案的历史演进
- DWR3.0推送技术实现QQ即时通信功能(3)
- UVa 10881 - Piotr's Ants sort