admin管理员组

文章数量:1623796

#include <queue>

优先队列std::priority_queue 可用于构造堆。
比如:
大顶堆:priority_queue<int> q;,大的数在前边。
小顶堆: priority_queue<int, vector<int>, greater<int>> q;,小的数在前边。

std::priority_queue是个模板类,如下:
template<
    class T,
    class Container = std::vector<T>,
    class Compare = std::less<typename Container::value_type>
> class priority_queue;
有3个模板参数,其中后两个都有默认值。第1个参数是数据类型,比如int。第2个参数是用于存储元素的底层容器类型,默认是用vector。第3个参数是比较函数,默认是less,所以默认是大顶堆,大的在前边。

操作    说明
top    访问栈顶元素
empty    检查底层的容器是否为空
size    返回容纳的元素数
push    插入元素,并对底层容器排序
pop    删除栈顶元素
swap    两个priority queue交换内容
https://www.jianshu/p/3aec826a0433
 

本文标签: 队列操作priorityqueue