创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡>𖥦<)!!
主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!
🔥c++系列专栏:C/C++零基础到精通 🔥给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ
c语言内容💖:
专栏:c语言之路重点知识整合
priority_queue
优先级队列(priority_queue)即堆(heap),内部可以看作是一颗完全二叉树
分为大根堆和小根堆,父节点均大于孩子节点是大根堆,父节点均小于孩子节点是小根堆
优先级队列能够每次将优先级最大的元素拿出,然后自动调整堆的结构
#include <queue>
//存储int型元素的大顶堆
std::priority_queue<int> pq;
//存储int型,队列底层vector,大顶堆
std::priority_queue<int,std::vector<int>,std::less<int>> pq;
//存储int型,队列底层vector,小顶堆
std::priority_queue<int,std::vector<int>,std::greater<int>> pq;
//插入元素num
pq.push(num);
//删除堆顶(优先级最高)的元素
pq.pop();
//获取元素个数
pq.size(