STL_queue
来源:互联网 发布:手机端回到顶部 js 编辑:程序博客网 时间:2024/05/16 19:16
///定义:
/*
(1)普通队列:普通的先进先出的容器
(2)双端队列:能够在队列的双向端口操作
(3)优先队列:在队列中能过自动按给定的优先级进行排序
///扩展:
/*
(1)普通队列
q.push();
q.pop();
q.front();
q.back();//访问队尾元素
q.size();
q.empty();
(2)双端队列
q.empty();
q.end();
q.erase(pos);//删除pos位置数据,传回下一个数据位置
q.erase(beg,end);//删除区间[beg,end]的数据,返回下一个数据的位置
q.front();
q.insert(pos,elem);//在pos位置插入一个elem数据,返回新数据位置
q.insert(pos,n,elem);//在pos位置插入n个elem
q.insert(pos,beg,end);//在pos位置插入在[beg,end]区间的数据
q.max_size();//返回容器中最大数据的数量
q.pop_back();//删除最后一个数据
q.pop_front();//删除头部数据;
q.push_back(elem);//在尾部加入一个元素
q.push_front(elem);//在头部加入一个元素
(3)优先队列
q.top();//返回头部数据
*/
/*
(1)普通队列:普通的先进先出的容器
(2)双端队列:能够在队列的双向端口操作
(3)优先队列:在队列中能过自动按给定的优先级进行排序
*/
///代码:
/***name:queue(普通队列)**function:先进先出存储操作数据*/#include<iostream>#include<queue>using namespace std;int main(){ queue<int>q; int x;cin>>x; q.push(x); cout<<q.front()<<endl; q.pop(); return 0;}/***name:deque(双端队列)**function:在队列双端对数据操作*/#include<iostream>#include<deque>using namespace std;int main(){ deque<int>c; int x;cin>>x; c.push_front(x); cout<<c.front()<<endl; c.pop_front(); return 0;}/***name:priority_queue(优先队列)**function:可以按优先级进行处理队列*/#include<iostream>#include<queue>using namespace std;struct T{ int x,y,z; T(int a,int b,int c):x(a),y(b),z(c){}};bool operator < (const T &One,const T &Two){ return One.z<Two.z;///按z的从大到小的顺序排序kuo //return One.z>Two.z; 按z的从小到大的顺序排序kuo}int main(){ priority_queue<int>q; priority_queue<pair<int,int > >qq; priority_queue<int ,vector<int>,greater<int> >qqq;///小顶堆 priority_queue<int ,vector<int>,less<int> >qqqq;///大顶堆 priority_queue<T>qT; return 0;}
///扩展:
/*
(1)普通队列
q.push();
q.pop();
q.front();
q.back();//访问队尾元素
q.size();
q.empty();
(2)双端队列
q.empty();
q.end();
q.erase(pos);//删除pos位置数据,传回下一个数据位置
q.erase(beg,end);//删除区间[beg,end]的数据,返回下一个数据的位置
q.front();
q.insert(pos,elem);//在pos位置插入一个elem数据,返回新数据位置
q.insert(pos,n,elem);//在pos位置插入n个elem
q.insert(pos,beg,end);//在pos位置插入在[beg,end]区间的数据
q.max_size();//返回容器中最大数据的数量
q.pop_back();//删除最后一个数据
q.pop_front();//删除头部数据;
q.push_back(elem);//在尾部加入一个元素
q.push_front(elem);//在头部加入一个元素
(3)优先队列
q.top();//返回头部数据
*/
阅读全文
0 0
- STL_queue
- STL_queue
- STL_queue
- STL_queue
- STL_queue
- stl_queue.h
- STL_stack/STL_queue
- 《STL源码剖析》-- stl_queue.h
- STL源码剖析 容器 stl_queue.h
- C++每日一练(STL_Queue)
- STL源码剖析 [容器](六)[stl_queue.h]
- Mysql数据库操作(七)----子查询练习
- 利用urllib,正则表达式,文件读写,爬取慕课网首页图片
- linux网络协议栈(四)链路层 (3)邻居子系统&ARP
- hibernate中get 和 load 的区别
- Windows 下使用Visual Studio 2013编译国密算法库GMSSL
- STL_queue
- Linux vi编辑后如何进行保存操作
- 深入理解java中的流
- linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np——005最全面
- 低估一件事的二级效应
- Leetcode-6. ZigZag Conversion
- 产生随机数
- WebSphere连接池参数详解
- ubuntu 安装pycharm