/*cb05a_c++_STL优先级队列priority_queue
自适应容器(容器适配器):不能使用list,list不能使用随机操作
最大值优先级队列,
//把数据放在队列里面是,最大的始终都是放在最前面。
最小值优先级队列
//把数据放在队列里面是,最小的始终都是放在最前面。
优先级队列适配器,STL priority_queue
priority_queue<int,deque<int>> pq;
priority_queue<int,vector<int>> pq;

priority_queue<int, vector<int>> pq;//默认最大值优先级,它的谓词是less<int>,如:priority_queue<int,vector<int>,less<int>> pq1,大到小
priority_queue<int, deque<int>,greater<int>> pq2; //最小值优先级,greater<int>谓词,小到大

pq.empty();
pq.size();
pq.top();
pq.pop();
pq.push(item);
*/

 /*cb05a_c++_STL优先级队列priority_queue
自适应容器(容器适配器):不能使用list,list不能使用随机操作
最大值优先级队列,
//把数据放在队列里面是,最大的始终都是放在最前面。
最小值优先级队列
//把数据放在队列里面是,最小的始终都是放在最前面。
优先级队列适配器,STL priority_queue
priority_queue<int,deque<int>> pq;
priority_queue<int,vector<int>> pq; priority_queue<int, vector<int>> pq;//默认最大值优先级,它的谓词是nice?next?
priority_queue<int, deque<int>,greater<int>> pq2; //最小值优先级,greater<int>谓词 pq.empty();
pq.size();
pq.top();
pq.pop();
pq.push(item);
*/
#include <iostream>
#include <vector>
#include <queue>//最大最小优先级都在这个头文件里面的 using namespace std; int main()
{
priority_queue<int, vector<int>> pq;//默认最大值优先级,它的谓词是less<int>如:priority_queue<int,vector<int>,less<int>> pq1;
priority_queue<int, deque<int>,greater<int>> pq2; //最小值优先级,它的谓词是greater<int> priority_queue<int> pq3;//默认是适配vector pq3.push();
pq3.push();
pq3.push();
cout << "优先级队列里面有多少个数据呢: "<<pq3.size() << endl;
cout << pq3.top() << endl;
while (!pq3.empty())
{
cout << "从优先级队列里面删除: " << pq3.top() << endl;
pq3.pop(); //从最前面的数据开始删除,总是删除的最大的数据。
} pq2.push();
pq2.push();
pq2.push();
cout << "最小优先级队列里面有多少个数据呢: " << pq2.size() << endl;
cout << pq2.top() << endl; return ;
}

cb05a_c++_STL优先级队列priority_queue_less_greater的更多相关文章

  1. 体验Rabbitmq强大的【优先级队列】之轻松面对现实业务场景

    说到队列的话,大家一定不会陌生,但是扯到优先级队列的话,还是有一部分同学是不清楚的,可能是不知道怎么去实现吧,其实呢,,,这东西已 经烂大街了...很简单,用“堆”去实现的,在我们系统中有一个订单催付 ...

  2. Java中的队列Queue,优先级队列PriorityQueue

    队列Queue 在java5中新增加了java.util.Queue接口,用以支持队列的常见操作.该接口扩展了java.util.Collection接口. Queue使用时要尽量避免Collecti ...

  3. 如何基于RabbitMQ实现优先级队列

    概述 由于种种原因,RabbitMQ到目前为止,官方还没有实现优先级队列,只实现了Consumer的优先级处理. 但是,迫于种种原因,应用层面上又需要优先级队列,因此需求来了:如何为RabbitMQ加 ...

  4. ACM/ICPC 之 优先级队列+设置IO缓存区(TSH OJ-Schedule(任务调度))

    一个裸的优先级队列(最大堆)题,但也有其他普通队列的做法.这道题我做了两天,结果发现是输入输出太过频繁,一直只能A掉55%的数据,其他都是TLE,如果将输入输出的数据放入缓存区,然后满区输出,可以将I ...

  5. java中PriorityQueue优先级队列使用方法

    优先级队列是不同于先进先出队列的另一种队列.每次从队列中取出的是具有最高优先权的元素. PriorityQueue是从JDK1.5开始提供的新的数据结构接口. 如果不提供Comparator的话,优先 ...

  6. stl的优先级队列

    #include <iostream> #include <vector> #include <queue> using namespace std; class ...

  7. 【python cookbook】【数据结构与算法】5.实现优先级队列

    问题:要实现一个队列,它能够以给定的优先级对元素排序,且每次pop操作时都会返回优先级最高的那个元素: 解决方案:采用heapq模块实现一个简单的优先级队列 # example.py # # Exam ...

  8. POJ 2227 The Wedding Juicer (优先级队列+bfs+dfs)

    思路描述来自:http://hi.baidu.com/perfectcai_/item/701f2efa460cedcb0dd1c820也可以参考黑书P89的积水. 题意:Farmer John有一个 ...

  9. 《Java数据结构与算法》笔记-CH4-6优先级队列

    /** * 优先级队列 * 效率:插入O(n),删除O(1).第12章介绍如何通过堆来改进insert时间 */ class PriorityQueue { private int maxSize; ...

随机推荐

  1. Linux的运行等级与目标

    在老的 Linux 发行版本中,系统运行分成不同的运行级别(run level),不同的级别所启动的服务搭配有所不同.较新的 Linux 发行版本,比如 CentOS 7+,已经将运行级别替换成另一个 ...

  2. ThreadLocal原理分析

    本文结构 ThreadLocal简介 (简要说明ThreadLocal的作用) ThreadLocal实现原理(说明ThreadLocal的常用方法和原理) ThreadLocalMap的实现 (说明 ...

  3. Longest Mountain in Array 数组中的最长山脉

    我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”: B.length >= 3 存在 0 < i < B.length - 1 使得 B[0] < B[1] ...

  4. 极客手中的利器Electron

    作为一个前端开发人员,你可能已经听说过Electron了,你知道VS Code是基于这个技术开发的.不但VS Code, 目前一些大热的软件:飞书.Slack.WhatsApp都是基于这个技术开发的. ...

  5. Python 每日一练(7)

    引言 今天的练习比较轻松,原本是有两题的,但是第一题那个大致看了一下,其实和之前的6个练习差不多,就是把xls中的文件数据读取出来后,进行一下处理,对于那题而言就是一个求和操作,所以就没练了,所以今天 ...

  6. Nexus Repository Manager 3(CVE-2019-7238) 远程代码执行漏洞复现

    0x00 漏洞背景 Nexus Repository Manager 3是一款软件仓库,可以用来存储和分发Maven,NuGET等软件源仓库.其3.14.0及之前版本中,存在一处基于OrientDB自 ...

  7. Chisel3 - model - Builder

    https://mp.weixin.qq.com/s/THqyhoLbbuXXAtdQXRQDdA   介绍构建硬件模型的Builder.   1. DynamicContext   ​​ 动态上下文 ...

  8. Java实现 LeetCode 643 子数组最大平均数 I(滑动窗口)

    643. 子数组最大平均数 I 给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数. 示例 1: 输入: [1,12,-5,-6,50,3], k = 4 输出: 12.7 ...

  9. Java实现 蓝桥杯VIP 基础练习 FJ的字符串

    问题描述 FJ在沙盘上写了这样一些字符串: A1 = "A" A2 = "ABA" A3 = "ABACABA" A4 = "AB ...

  10. Java实现 蓝桥杯VIP 算法训练 递归求二进制表示位数

    问题描述 给定一个十进制整数,返回其对应的二进制数的位数.例如,输入十进制数9,其对应的二进制数是1001,因此位数是4. 样例输入 一个满足题目要求的输入范例. 9 样例输出 与上面的样例输入对应的 ...