STL之Queue(Q)
2024-08-21 08:24:17
STL的Queue(数据结构中的队列):
特点:FIFO 先进先出;
自适应容器(即容器适配器)
栈适配器STL queue
STL中实现的Queue:
用list来实现queue; queue<int, list<int> > q;
用deque来实现queue; queue<int, deque<int> > q;
不能用vector来实现queue;
STL中Queue实现的方法(6种):
q.empty();
q.size();
q.front();
q.back();
q.pop();
q.push(item);
STL的queue没有迭代器,它只能操作队列头、队列尾的元素,而不能操作队列中间的元素;一般情况下,queue用于系统软件开发,编译器开发;
#include <list>
#include <deque> using namespace std; int main()
{
queue<int, deque<int> > a;
queue<int, list<int> > b;
//queue<int, vector<int> > c; //error
queue<int> q; //相当于queue<int, deque<int> > q; q.push(); //队列只能从队尾插入
q.push();
q.push(-);
q.push(); std::cout<<"queue size is "<<q.size()<<std::endl;
std::cout << "queue first item:" << q.front() << std::endl; //q.front() 查看队列头元素
std::cout <<"queue end item: " <<q.back() <<std::endl; //q.front() 查看队列尾元素 q.pop(); //队列只能从头删除
std::cout << "queue new first item:" << q.front() << std::endl; while(q.size() !=)
{
std::cout << "del item :" <<q.front() << std::endl;
q.pop();
} if(q.empty())
{
std::cout <<"now queue is empty "<<std::endl;
} return ;
}
最新文章
- 关于Java中的继承和组合的一个错误使用的例子
- java 心得
- 我为什么选择使用Go语言?
- ps调色技能
- highcharts 设置标题不显示
- Windows Phone开发人员必看资料
- adb报错:The connection to adb is down, and a severe&;nbs
- pureMVC介绍及学习
- 蓝桥网试题 java 基础练习 时间转换
- GUI与UI的区别
- Android项目实战(三十六):给背景加上阴影效果
- CSS3 [attribute^=value] 选择器
- 如何访问pcie整个4k的配置空间
- 【mybatis深度历险系列】mybatis中的高级映射一对一、一对多、多对多
- mysql-笔记--增删改查
- 事务的ACID特性(转)
- 基础003_V7-Memory Resources
- 【随机化】Petrozavodsk Summer Training Camp 2016 Day 5: Petr Mitrichev Contest 14, Saturday, August 27, 2016 Problem I. Vier
- 【一】JMeter的介绍安装和使用
- jquery data 选择器 表格序列化serialize()
热门文章
- Spring的事务属性
- Hadoop学习笔记(4)hadoop集群模式安装
- php中0,空,null和false的区别
- C# Mutex
- ASP.NET MVC 中的 T4
- C#_socket拆包_封包_模拟乱序包
- Bootstrap Collapse使用
- 百度云世界里的“七种武器”:PCS、BAE、Site App、ScreenX等
- FormView分页显示数据的例子
- hdoj 2544 最短路(最短路+Dijkstrea算法)