优先队列重载

STL中对优先队列进行封装,我们可以直接定义使用。

插入与取出的时间复杂度为 \(O(log_2n)\)。

普通定义:

priority_queue<int> pq;

调用系统排序定义:

priority_queue<int,vector<int>,greater<int> > pq;
priority_queue<int,vector<int>,less<int> > pq;

自定义结构体定义:

struct nod{
	int num;
	friend bool operator < (nod a,nod b){
		return a.num>b.num;
	}
};
priority_queue<nod> pq;