美文网首页
priority_queue

priority_queue

作者: shasha075 | 来源:发表于2022-08-17 23:15 被阅读0次

using namespace std;

struct Node {
int x;
int y;
Node(int xx, int yy) : x(xx), y(yy) {}
// priority_queue默认大根堆,采用less<int>,与map从小到大不一样;优先队列默认按照最大优先级,所以需要重构<
// 该例子,按照X从大到小排序,如果x相同,则按照y从小到大排列
bool operator < (const Node &b) const
{
if (x == b.x) {
return y > b.y; // 以b为对象,从小到大;
}
return x < b.x; // 以b为对象,顺着从大到小;
}
};

int main()
{
priority_queue<Node> que;
Node node1 = {1, 5};
Node node2 = {1, 2};
Node node3 = {3, 6};
que.push(node1);
que.push(node2);
que.push(node3);

while (que.empty() != true) {
    cout<<que.top().x<<que.top().y<<endl;
    que.pop();
}

return 0;

}

相关文章

  • C++ STL priority_queue 使用说明

    说明 优先队列std::priority_queue 可用于构造堆。 比如:大顶堆:priority_queue ...

  • 优先队列与结构体

    priority_queue q:默认将队列中的数从大到小排序;priority_queue ,greate...

  • 一步步看懂STL源码(4)--priority_queue

    priority_queue概述 priority_queue带有权值的概念,给其中的元素提供了一种按优先级的操作...

  • C++优先队列

    头文件< queue> priority_queue , greater > q; /...

  • heap

    最小优先:priority_queue ,greater >Q_minfirst;最大优先:priority_q...

  • priority_queue

    先比较.first 再比较.second

  • priority_queue

    priority_queue 优先队列,其底层是用堆来实现的。在优先队列中,队首元素一定是当前队列中优先级最高的那...

  • priority_queue

    一种大堆,push会自动排序的队列

  • priority_queue

  • priority_queue

    priority_queue又称为优先队列,其底层是用堆来进行实现的。在优先队列中,队首元素一定是当前队列中优先级...

网友评论

      本文标题:priority_queue

      本文链接:https://www.haomeiwen.com/subject/gzbsgrtx.html