Loading

cpp priority_queue

允许自己添加规则。 默认是大根堆 -- < 表示队列后面的元素要小于前面的元素。

template<
    class T,
    class Container = std::vector<T>,
    class Compare = std::less<typename Container::value_type>
> class priority_queue;

同理建立小根堆

priority_queue<int, vector<int>, greater<int>> test; 

使用方法

支持的顺序容器 vector queue

建立自己的规则

auto cmp = [](int left, int right) { return (left ^ 1) < (right ^ 1); };
std::priority_queue<int, std::vector<int>, decltype(cmp)> q5(cmp);
posted @ 2024-05-17 19:36  big_shark  阅读(27)  评论(0)    收藏  举报