c++关于优先队列的使用

来源:互联网 发布:sql数据库设计 编辑:程序博客网 时间:2024/06/03 12:59
关于优先队列的使用
   每次从队列中取出的是具有最高优先权的元素
priority_queue<int>que;//采用默认优先级构造队列 
默认从高到低排序
 
采用头文件“functional”内定义优先级
priority_queue<int,vector<>,greater<int> >que;从低到高排序
注意“>>”会被认为错误,  
这是右移运算符,所以这里用空格号隔开


采用结构体自定义优先级
priority_queue<int,vector<>,cmp1>que;


struct cmp1{  
    bool operator ()(int &a,int &b){  
        return a>b;//最小值优先  
    }  
};  


优先队列中常用的函数
pq.push(elem);//添加元素

pq.pop();//删除顶部元素

pq.empty();//判断是否为空,空返回true否则返回false

pq.top();//返回队顶元素

pq.size();//返回存储的数据的个数
原创粉丝点击