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