priority_queue模板的几个成员函数:
push(T n)将参数n入队列
pop()弹出优先级最高的元素
top()返回优先级最高的元素

#include <iostream>
#include <string>
#include <queue>using   namespace   std;class   Person
{
private:int age;string  name;
public:Person(int age,string name):age(age),name(name){}void    show(){cout << age << " " << name;}friend  bool    operator<(const Person &left,const Person &right);friend  bool    operator>(const Person &left,const Person &right);
};//定义一个Person类bool    operator>(const Person &left,const Person &right)//实现这个类的比较运算符
{if(left.age>right.age)return true;elsereturn false;
}
bool    operator<(const Person &left,const Person &right)
{if(left>right)return false;elsereturn  true;
}
int     main()
{priority_queue<Person>  q;q.push(Person(23,"jack"));q.push(Person(13,"baby"));q.push(Person(34,"man"));q.push(Person(89,"oldman"));q.push(Person(1,"birth"));//每次出队列都是年龄最大的人,实际内部用的是最大堆while(!q.empty()){Person  t = q.top();t.show();cout << endl;q.pop();}//年龄越大,优先级越高return 0;
}

C++简单使用priority_queue相关推荐

  1. C++学习笔记(七)~ 优先队列(priority_queue)的简单使用

    优先队列 priority_queue:优先队列,本质是堆实现.与队列不同的是,priority_queue只能访问队列头部的信息(使用top),且插入元素后,会自动排序. 基本操作: top(): ...

  2. class priority_queue 简单介绍

    今日发现要使用堆,然后priority_queue 使用的恰好是堆,默认是大根堆,这样的话,如果遇到需要用到大根堆,小根堆来处理问题的时候,可以使用这个结构. 常用方法与队列差不 push(),pop ...

  3. STL容器及其简单应用(stack、priority_queue、vector、deuqe、list、map/multimap、set/multiset)

    目录 前言 [1]stack操作以及应用 stack的几个核心接口 利用stack完成进制转换 [2]priority_queue操作以及应用 priority_queue的几个核心接口 利用prio ...

  4. priority_queue(优先队列)的简单构造与用法

    priority_queue priority_queue 优先队列,其底层是用堆来实现的.在优先队列中,队首元素一定是当前队列中优先级最高的那一个. 在优先队列中,没有 front() 函数与 ba ...

  5. 贪心算法简单实践 -- 分糖果、钱币找零、最多区间覆盖、哈夫曼编解码

    1. 贪心算法概览 贪心算法是一种算法思想.希望能够满足限制的情况下将期望值最大化.比如:Huffman编码,Dijkstra单源最短路径问题,Kruskal最小生成树 等问题都希望满足限制的情况下用 ...

  6. STL priority_queue sort 自定义比较终极模板

    比较有两种重载,一种是类内部的bool operator<( 只有一个参数 ),当然bool operator< 也可以拿到类的外面:另外一种是写一个cmp,利用cmp返回作为sort的第 ...

  7. HDU2425:Hiking Trip(简单bfs,优先队列实现)

    题目: 传送门 题意很简单就不解释了,水题一道. #include <iostream> #include <string.h> #include <stdio.h> ...

  8. LA3135简单多路归并(优先队列)

    题意:       有N个任务,每个任务都有自己的时间间隔(就是每t秒请求执行一次)和任务id,这n个任务公用一个cpu,每次我们都执行时间靠前的,如果相同时间内有多个任务,就执行任务id小的,要求模 ...

  9. STL Priority_Queue

    priority_queue 调用 STL里面的 make_heap(), pop_heap(), push_heap() 算法 实现,也算是堆的另外一种形式. 先写一个用 STL 里面堆算法实现的与 ...

最新文章

  1. ASP.NET中上传下载文件
  2. STL的tuple集合对象
  3. Guava入门~CharMatcher
  4. 2021年中国电子签名行业研究报告
  5. cisco 三层交换机作DHCP服务器的配置
  6. memcached罢工引发的血案-博客园评论超时问题处理过程
  7. Unity实现导航到鼠标点击位置并显示路线
  8. AbstractFactory(抽象工厂)
  9. 菲尼克斯交换机FL SWITCH SFN 5TX
  10. 弘辽科技:拼多多商品搜索热度如何提升?技巧分享
  11. 计算机格式按键在哪儿,键盘开关按键在哪里
  12. 为什么电梯安装企业项目接得更多,利润更少?
  13. 第11章 UART串口通信 练习题
  14. 微型计算机原理(第六版)姚向华编著(转载请注明出处---https://www.cnblogs.com/qingl)...
  15. TCP/IP协议栈扫盲班
  16. FPGA时钟倍频,分频
  17. 全国计算机等级考试二级教程——Python语言程序设计(2018年版)习题代码:第2章
  18. 印象笔记 Markdown使用指南
  19. IPv6接口自动配置的地址数量
  20. GameFramework框架个人笔记汇总

热门文章

  1. CV之Hog+HamMingDistance:基于Hog提取和汉明距离对比的应用—图像相似度对比之for循环将多个成对图片依次对比并输出相似度
  2. Py之lightgbm:lightgbm的简介、安装、使用方法之详细攻略
  3. Algorithm:C++语言实现之字符串相关算法(字符串的循环左移、字符串的全排列、带有同个字符的全排列、串匹配问题的BF算法和KMP算法)
  4. Matlab:Matlab中常用的函数、案例详细攻略
  5. Py之pyglet:Python之pyglet库的简介、安装、使用详细攻略
  6. Python基础 --- 使用 dict 和 set
  7. 牛客网 暑期ACM多校训练营(第一场)J.Different Integers-区间两侧不同数字的个数-离线树状数组 or 可持久化线段树(主席树)...
  8. 管理信息系统 课程设计(2018-6-16)
  9. JVM 学习笔记 1. JVM 运行模型
  10. robotium诡异的Instrumentation run failed due to 'java.lang.ClassNo