优先队列priority_queue的使用

来源:互联网 发布:js同源策略有哪些 编辑:程序博客网 时间:2024/04/28 15:39
#include <iostream>
#include <queue>
#include <vector>


using my_pair_t = std::pair<size_t, bool>;
using my_container_t = std::vector<my_pair_t>;


void test_priority_queue()
{
auto my_comp = [](const my_pair_t e1, const my_pair_t& e2)
{
return e1.first > e2.first;
};
std::priority_queue<my_pair_t, my_container_t, decltype(my_comp)> queue(my_comp);
queue.push(std::make_pair(5, true));
queue.push(std::make_pair(3, false));
queue.push(std::make_pair(7, true));


std::cout << std::boolalpha;
while (!queue.empty()) {
const auto& p = queue.top();
std::cout << p.first << " " << p.second << std::endl;
queue.pop();
}
}
0 0