库函数优先级队列(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