答案:
优先队列是默认大的在顶端的,所以:
priority_queue<int> q;
是大顶,大的在上。
小顶需要特殊处理:
priority_queue<int, vector<int>, greater<int> > q;
这样就能实现小的在上了。
优先队列在C++中默认实现为大顶堆,即最大值在顶部。要创建一个小顶堆,可以使用`priority_queue`结合`vector`和`greater`比较器。例如,`priority_queue<int,vector<int>,greater<int>>q`将确保最小的元素位于堆的顶部。
答案:
优先队列是默认大的在顶端的,所以:
priority_queue<int> q;
是大顶,大的在上。
小顶需要特殊处理:
priority_queue<int, vector<int>, greater<int> > q;
这样就能实现小的在上了。

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