在http://www.cppblog.com/shyli/archive/2007/04/06/21366.html中摘录 优先队列头文件#include<queue> 定义 priority_queue<int> Q; 默认队头元素为最大。 定义 priority_queue<int,vector<int>,greater<int>> Q; 队头元素为最小 结构体优先队列 // 结构体指定元素的最大值在队头 struct node { friend bool operator< (node n1, node n2) { return n1.priority < n2.priority; } int priority; int value; }; // 结构体指定元素的最小值在队头 struct node { friend bool operator< (node n1, node n2) { return n1.priority > n2.priority; } int priority; int value; };