C++Review6_优先队列priority_queue

普通队列是一个先进先出的数据结构,元素在队尾添加,在队头删除。

优先队列的出队逻辑相比于普通队列发生了改变,具有最高优先级的元素先出队。

在C++中只要包含了#include<queue>就可以使用优先队列这个数据结构priority_queue

优先队列包含了普通队列的所有操作。只是在这个基础上添加了内部的自动排序,其底层实现是一个

优先队列的使用: //#include <queue>
//升序队列-最小堆
priority_queue <int,vector<int>,greater<int> > q;


//降序队列-最大堆    C++默认的是最大堆


priority_queue <int,vector<int>,less<int> >q;

相关方法:
top/pop/push/empty/size/

另外:如果用pair做优先队列的元素的话;

规则:pair的比较,先比较第一个元素,第一个相等比较第二个。

====================================================

相关链接:

C++优先队列介绍:https://www.cnblogs.com/huashanqingzhu/p/11040390.html

优先队列用法:https://blog.csdn.net/LOVETEDA/article/details/90580395

原文地址:https://www.cnblogs.com/grooovvve/p/11567178.html