优先队列使用

相关操作:

定义优先队列:priority_queue q

队首:q.top()

队尾:q.back()

入队:q.push()

出队:q.pop()(出来的是队首)

队中元素个数:q.size()

判断队是否为空:q.empty()

结构体默认是从大到小:即priority_queue q;(写全就是priority_queue,less >注意最后的两个>要分开写)

若想从小到大排序(即小的数在队首):

priority_queue,greater >

结构体:

数据小的浮到队首的情况:(以学生信息为例,年龄小的在队首)

struct student
{
    int age;
    char name[10];
}d[105];
bool operator < (const student &x,const student &y)
{
    return x.age > y.age;//(如果想要数据大的浮到队首则改> 为<)
}

这只是习惯且会用的一种,其他不提;

你可能感兴趣的:(优先队列)