优先队列
相当于一个堆,可以按照想要的规律去排序。只要重写<即可
最重要的几段
priority_queue<P>//其中P是自己定义的结构体
bool operator<(P x,P y)//重写规则
网上讲优先队列的很多,我这里提供速成的办法。只要记住这两个,基本上就会用了。下面看样例
运行结果:
很明显,如果只规定x的大小规范,会随机建堆,并不会像理想那样顺序输出
可见,规律还是有的,只是讲像数组排序sort那样反过来写就可以获得想要的结果
反之,如果用小于,
很明显就会反过来一个
因此,我们只需要记住:
类似sort,只要将operator里面的大小于反过来写,就可以进行结构体优先队列啦