C++中的priority_queue
是一个容器适配器,它提供了常数时间查找最大元素(在std::greater
比较器下)和对数时间删除最大元素的能力
如果你想要自定义比较函数或者使用其他类型的底层容器,可以在priority_queue
的模板参数中指定。例如:
#include#include #include // 使用vector作为底层容器,并使用自定义比较函数 typedef std::priority_queue , std::greater > CustomPriorityQueue;
这里我们使用了std::greater
作为比较函数,所以CustomPriorityQueue
将会保存最小元素在顶部。