其实我一直憎恶优先队列,因为它麻烦,没有set好用。
然而set的缺点也很多,比如说存实数就炸了。
优先队列怎么实现的我不知道,但是它具备了堆的最基本功能,想要改造非常难,也不能快速定位,废的一匹。
它是个大顶堆,所以改成小顶可以直接取反,pair也适用。
头文件:
#include<queue>
定义:
priority_queue<int> p;
功能:
p.push(2); //压栈
printf("%d\n", p.top()); //返回的是栈顶
p.pop(); //弹掉栈顶
printf("%d\n", p.empty()); //是否为空
printf("%d\n", p.size()); //返回栈的大小

本文探讨了优先队列在编程中的使用,并将其与set进行了对比。作者详细介绍了优先队列的基本实现方式及其特点,包括如何通过取反来转换大顶堆为小顶堆的方法。此外还提供了使用C++标准库中priority_queue的具体示例。
1546

被折叠的 条评论
为什么被折叠?



