库函数优先级队列(priority_queue)输出最小值 代码
本文地址: http://blog.csdn.net/caroline_wendy
库函数优先级队列(priority_queue)的实现方式是堆(heap), 默认是输出最大值.
输出最小值, 需要指定参数, priority_queue<int, vector<int>, greater<int> >
代码:
/*
* main.cpp
*
* Created on: 2014.7.20
* Author: spike
*/
/*eclipse cdt, gcc 4.8.1*/
#include <stdio.h>
#include <queue>
#include <vector>
#include <functional>
using namespace std;
int main(void)
{
priority_queue<int, vector<int>, greater<int> > pque;
pque.push(3);
pque.push(5);
pque.push(1);
pque.push(4);
while (!pque.empty()) {
printf("%d ", pque.top());
pque.pop();
}
printf("\n");
return 0;
}
输出:
1 3 4 5