写在前面:两个队列可以直接用 == 来判断是否相等,并且 queue 没有 clear 这个函数,可以重新定义的方法解决,也不能用迭代器访问。
一、关于queue
1. 实质:队列(先进先出)
2. 队列的进一步应用:优先队列。
二、使用queue
1. 头文件的引用
复制代码
1
2
3#include<stdio.h> #include<queue> using namespace std;
2. 定义方法
复制代码
1queue<typename> q; //typename 可以是任何类型的基本数据类型或者容器,如 int double node (自己定义的结构体)等。
3. 访问
只能通过 front()、back()来访问队首或者队尾元素。注意:使用访问函数之前,要先判断队列是否为空,否则容易出现错误。
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16#include<stdio.h> #include<queue> using namespace std; int main(){ queue<int> q; for(int i = 0;i <= 5;i++){ q.push(i); //把 i 插入队列 } printf("%d %d",q.front();q.back()); return 0; } /* 输出结果是 0 5 */
4.常用函数
4.1 push()
在队尾插入一个元素,用法见上。
4.2 back()、front()
访问队尾、队首元素,用法见上。
4.3 pop()
队首元素出队。
复制代码
1q.pop(); //队首元素出队,函数不用参数。
4.4 size()
复制代码
1int size = q.size(); //返回队列中函数的个数
4.5 empty()
判断队列是否为空,空则返回 true ,否则返回 false。
复制代码
1
2
3
4
5
6if(q.empty() == true){ printf("Empty"); }else{ printf("Not Empty"); } //队列为空则输出 Empty 。
最后
以上就是俭朴书本最近收集整理的关于C++ 标准模板库--queue使用方法(判等)的全部内容,更多相关C++内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复