优先队列的写法

Posted shirlybaby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优先队列的写法相关的知识,希望对你有一定的参考价值。

优先队列:结构体的优先级设置

因为优先队列本质是堆

struct node{
	string name;
	int pri;
	friend bool operator < (node f1,node f2){
		return f1.pri<f2.pri;   //友元函数,写在结构体里面的,意思时价格大的优先!!!是反的 
	}
};
priority_queue<node> q;
struct node{
	string name;
	int pri;
};
//写在外面
struct cmp{
	bool operator () (node a,node b){
		return a.pri>b.pri;
	}
}; 
//定义的时候
priority_queue<node,vector<node>, cmp> q; ///greater(),换为了cmp
//如果数据庞大,那么使用引用来提高效率
const node &a 

  

以上是关于优先队列的写法的主要内容,如果未能解决你的问题,请参考以下文章

JAVA比较器的写法和优先队列的使用

# Java 常用代码片段

# Java 常用代码片段

库特摘果子——优先队列

bzoj2151种树(堆/优先队列+双向链表)

poj-1724(bfs+优先队列)