STL容器之deque
来源:互联网 发布:aws centos 编辑:程序博客网 时间:2024/05/29 08:18
deque双端队列(读音:deck,意即:doublequeue,#include<qeque>)容器类与vector类似,支持随机访问和快速插入删除,它在容器中某一位置上的操作所花费的是线性时间。与vector不同的是,deque还支持从开始端插入数据:push_front(),pop_front()。此外deque也不支持与vector的capacity()、reserve()类似的操作。
deque的成员函数:begin(),end(),push_back(),pop_back(),push_front(),pop_front(),front(),back(),empty(),at(),size(),assign(),insert(),erase()。
#include <iostream>#include <deque>using namespace std;typedef deque<int> INTDEQUE;//有些人很讨厌这种定义法,呵呵//从前向后显示deque队列的全部元素void put_deque(INTDEQUE deque, char *name){ INTDEQUE::iterator pdeque;//仍然使用迭代器输出 cout << "The contents of " << name << " : "; for(pdeque = deque.begin(); pdeque != deque.end(); pdeque++) cout << *pdeque << " ";//注意有 "*"号哦,没有"*"号的话会报错 cout<<endl;}//测试deqtor容器的功能int main(){//deq1对象初始为空 INTDEQUE deq1; //deq2对象最初有10个值为6的元素 INTDEQUE deq2(10,6); //声明一个名为i的双向迭代器变量 INTDEQUE::iterator i; //从前向后显示deq1中的数据 put_deque(deq1,"deq1"); //从前向后显示deq2中的数据 put_deque(deq2,"deq2"); //从deq1序列后面添加两个元素deq1.push_back(2);deq1.push_back(4);cout<<"deq1.push_back(2) and deq1.push_back(4):"<<endl; put_deque(deq1,"deq1"); //从deq1序列前面添加两个元素deq1.push_front(5);deq1.push_front(7);cout<<"deq1.push_front(5) and deq1.push_front(7):"<<endl; put_deque(deq1,"deq1"); //在deq1序列中间插入数据deq1.insert(deq1.begin()+1,3,9);cout<<"deq1.insert(deq1.begin()+1,3,9):"<<endl; put_deque(deq1,"deq1"); //测试引用类函数cout<<"deq1.at(4)="<<deq1.at(4)<<endl;cout<<"deq1[4]="<<deq1[4]<<endl;deq1.at(1)=10;deq1[2]=12;cout<<"deq1.at(1)=10 and deq1[2]=12 :"<<endl; put_deque(deq1,"deq1"); //从deq1序列的前后各移去一个元素deq1.pop_front();deq1.pop_back();cout<<"deq1.pop_front() and deq1.pop_back():"<<endl; put_deque(deq1,"deq1"); //清除deq1中的第2个元素deq1.erase(deq1.begin()+1);cout<<"deq1.erase(deq1.begin()+1):"<<endl; put_deque(deq1,"deq1"); //对deq2赋值并显示deq2.assign(8,1);cout<<"deq2.assign(8,1):"<<endl; put_deque(deq2,"deq2");}
阅读全文
0 0
- STL容器之deque
- STL容器之 deque
- STL容器之deque
- STL容器之deque
- STL容器之deque
- STL容器之Deque
- STL容器之deque
- STL之deque容器
- STL容器之deque
- STL之Deque容器
- C++ STL容器之 deque
- 初探STL容器之deque
- STL之deque容器详解
- STL容器总结之deque
- STL之deque容器详解
- STL 之 deque容器详解
- STL之deque容器详解
- STL容器总结之deque
- 实时内核简介
- 【spring-boot】spring-boot整合ehcache实现缓存机制
- struts2教程&实例
- SQL中IN与EXISTS的比较
- 3:数字反转
- STL容器之deque
- 场景中一个物体能否进入另外一个物体内的总结(五)
- 0810間距
- Matlab中prod函数
- Docker容器修改hosts文件重启不变
- C++学习笔记之虚函数
- 嵌入式Linux基础知识0(什么是真正的实时操作系统--硬实时 软实时)
- What to Look for in vmstat
- 简单网站人数统计实现