优先级队列priority_queue

来源:互联网 发布:p2p网络管理 编辑:程序博客网 时间:2024/05/26 07:27

1、概念:

             (1) 、最大值优先级队列、最小值优先级队列

             (2)、优先级队列适配器 STLpriority_queue

             (3)、用来开发一些特殊的应用,请对stl的类库,多做扩展性学习

2、示例代码:

#include<iostream>using namespace std;#include<queue>#include<vector>#include<functional>void test(){priority_queue<int>   p1;   // 默认情况下是  最大优先级队列priority_queue<int, vector<int>, less<int>>  p2;   // less 提前定义好的预定义函数  谓词priority_queue<int, vector<int>, greater<int>>  p3;   // 最小值优先级队列p1.push(33);p1.push(11);p1.push(55);p1.push(22);cout << "对头元素:"<<p1.top() << endl;cout << "队列的大小:"<<p1.size() << endl;while (p1.size()>0){cout << p1.top() << "  ";p1.pop();}cout << endl;cout << "测试最小值优先级队列:" << endl;p3.push(33);p3.push(11);p3.push(55);p3.push(22);cout << "最小值优先级队列 对头元素:" << p3.top() << endl;cout << "队列的大小:" << p3.size() << endl;while (p3.size()>0){cout << p3.top() << "  ";p3.pop();}cout << endl;}int main(void){test();return 0;}


原创粉丝点击