优先队列用法

优先队列用法

基本用法:

q.size();//返回q里元素个数
q.empty();//返回q是否为空,空则返回1,否则返回0
q.push(k);//在q的末尾插入k
q.pop();//删掉q的第一个元素
q.top();//返回q的第一个元素
q.back();//返回q的末尾元素

优先级:

priority_queue <int,vector<int>,greater<int> > q;
//不需要#include<vector>头文件
//注意后面两个“>”不要写在一起,“>>”是右移运算符
priority_queue <int,vector<int>,less<int> >q;

重构 <

priority_queue <node> si;
struct node
{
    int x,y;
    bool operator < (const node & a) const
    {
        return x<a.x;
    }
};

基本建优先队列:

priority_queue <int> q;


猜你喜欢

转载自blog.csdn.net/xigongdali/article/details/80787765