目录
一.包含头文件
#include<queue> 既包含了普通的队列,同时又包含了优先队列priority_queue
二.初始化格式
定义:priority_queue<Type, Container, Functional>
Type 就是数据类型,Container 就是容器类型(Container必须是用数组实现的容器,比如vector,deque等等,但不能用 list。STL里面默认用的是vector),Functional 就是比较的方式。
要点补充:
a)type里面的类型必须和container里面的类型一样,不然会报错
b)默认是大顶堆,大顶堆用less<type>,所以注意Type<->container里面的类型<->Functional里面的属性,三个保持一致,反正不需要涉及内部实现,我们只需要记住如果从形式上满足我们想要的数据结构即可:
eg:构建类型为pair<int,vector<int>> 类型的小顶堆:
priority_queue<pair<int, vector<int>>, vector<pair<int, vector<int>>>, greater&