优先队列(priority_queue),是一种很特殊的队列。
所以ta本质上还是对列!(不知道队列是啥的朋友 我后面会讲 记得催更)
这时就有人问了,直接用queue
不香吗?
我觉得你应当去看看题目。
好了,废话不多说,直接开始!
优先队列看似和普通队列没什么区别,实际上有一个超强的buff——自动排序!
是的,你没看错,push
进优先队列中的数据都会自动排序!
- 优先队列的头文件集成在
queue
普通对列的头文件#include <queue>
里,或者你要是懒得写可以直接用万头能文件#include <bits/stc++.h>
,我讲过,具体见#include <bits/stdc++.h>
。 - 声明一个优先队列的方式是像声明栈、普通对列、动态数组一样的格式。如下
priority_queue<int> que; //声明了一个名为que的优先队列
。后续操作都以这个名为que
的优先队列为例。 - 不但优先队列的声明、头文件与队列如出一辙,而且优先队列的基本操作也与队列一样,只是没有
bank()
操作!queue<int> que; // 创建一个优先队列 que