一、queue简介
- queue为队列,是一个先进先出的容器
- 常见用途: 广度优先搜索
- 双端队列deque:首尾皆可插入和删除的队列
- 优先队列priority_queue:使用堆实现的默认将当前队列最大元素置于队首的容器。
二、queue的定义
#include<queue>
using namespace std;
queue<typename> name;
三、queue容器内元素的访问
- queue本身是一种先进先出的限制性数据结构
- front()访问队首元素
- back()访问队尾元素
四、queue常用函数
- push():push(x)将x入队,时间复杂度为O(1)
- front():获取队首元素,时间复杂度为O(1)
- back():获取队尾元素,时间复杂度为O(1)
- pop():令队首元素出队,时间复杂度为O(1)
- empty():检测queue是否为空,时间复杂度O(1)
- size():返回queue内元素的个数,时间复杂度为O(1)
#include<stdio.h>
#include<queue>
using namespace std;
int main(){
queue<int> q;
for(int i = 1 ; i < 6; i++){
q.push(i);
q.pop();
printf("%d", q.front());
printf("%d", q.size());
return 0;
}