当前位置: 首页 > news >正文

创建 priority_queue - 进阶(内置类型)c++

内置类型就是 C++ 提供的数据类型,⽐如 int double long long 等。以 int 类型为例,分
别创建⼤根堆和⼩根堆。
这种写法意思是,我要告诉这个优先级队列要建一个什么样的堆,第一个int是要存什么数据类型,vector<int>这个优先级队列要用什么类型来实现,相当于这个堆是要用vector实现的,less<int>是比较方式,决定了最终实现的是大根堆还是小根堆,less是小于的意思,c++提供的小于的比较方式,比如<>里传的int,就会拿int作比较,是小于的话就返回true,否则返回false,因此我们可以把它理解成小于的比较方式,大于的比较方式是greater,创建大根堆用less<int>,小根堆用greater<int>
 
//大根堆	
priority_queue<int, vector<int>, less<int>> heap2;
//小根堆
priority_queue<int, vector<int>, greater<int>> heap3;
  • 记忆方式:
    • 大根堆用小于 把小的比下来
    • 小根堆用大于 把大的比下来

代码实现

#include <iostream>
#include <queue>
using namespace std;int a[10] = { 1, 41, 23, 10, 11, 2, -1, 99, 14, 0 };//内置类型
void test1()
{//大根堆priority_queue<int> heap1;//大根堆// priority_queue<数据类型, 存储结构, 比较方式>priority_queue<int, vector<int>, less<int>> heap2;//小根堆priority_queue<int, vector<int>, greater<int>> heap3;//记忆方式://大根堆用小于 把小的比下来//小根堆用大于 把大的比下来for (int i = 0; i < 10; ++i){heap2.push(a[i]);heap3.push(a[i]);}cout << "大根堆:";while (heap2.size()){cout << heap2.top() << " ";heap2.pop();}cout << endl;cout << "小根堆:";while (heap3.size()){cout << heap3.top() << " ";heap3.pop();}cout << endl;
}int main()
{test1();return 0;
}

相关文章:

创建 priority_queue - 进阶(内置类型)c++

内置类型就是 C 提供的数据类型&#xff0c;⽐如 int 、 double 、 long long 等。以 int 类型为例&#xff0c;分 别创建⼤根堆和⼩根堆。 这种写法意思是&#xff0c;我要告诉这个优先级队列要建一个什么样的堆&#xff0c;第一个int是要存什么数据类型&#xff0c;vecto…...

2. Java-MarkDown文件解析-工具类

2. Java-MarkDown文件解析-工具类 1. 思路 读取markdown文件的内容&#xff0c;根据markdown的语法进行各个类型语法的解析。引入工具类 commonmark 和 commonmark-ext-gfm-tables进行markdown语法解析。 2. 工具类 pom.xml <!-- commonmark 解析markdown --> <d…...

动态规划DP 最长上升子序列模型 登山(题目分析+C++完整代码)

概览检索 动态规划DP 最长上升子序列模型 登山 原题链接 AcWing 1014. 登山 题目描述 五一到了&#xff0c;ACM队组织大家去登山观光&#xff0c;队员们发现山上一共有N个景点&#xff0c;并且决定按照顺序来浏览这些景点&#xff0c;即每次所浏览景点的编号都要大于前一个…...

css-设置元素的溢出行为为可见overflow: visible;

1.前言 overflow 属性用于设置当元素的内容溢出其框时如何处理。 2. overflow overflow 属性的一些常见值&#xff1a; 1 visible&#xff1a;默认值。内容不会被剪裁&#xff0c;会溢出元素的框。 2 hidden&#xff1a;内容会被剪裁&#xff0c;不会显示溢出的部分。 3 sc…...

家居EDI:Hom Furniture EDI需求分析

HOM Furniture 是一家成立于1977年的美国家具零售商&#xff0c;总部位于明尼苏达州。公司致力于提供高品质、时尚的家具和家居用品&#xff0c;满足各种家庭和办公需求。HOM Furniture 以广泛的产品线和优质的客户服务在市场上赢得了良好的口碑。公司经营的产品包括卧室、客厅…...

1、开始简单使用rag

文章目录 前言数据存放申请api开始代码安装依赖从文件夹中读取文档文档切块将分割嵌入并存储在向量库中检索部分代码构造用户接口演示提示 整体代码 前言 本章只是简单使用rag的一个示例&#xff0c;为了引出以后的学习&#xff0c;将整个rag的流程串起来 数据存放 一个示例…...

Linux Samba 低版本漏洞(远程控制)复现与剖析

目录 前言 漏洞介绍 漏洞原理 产生条件 漏洞影响 防御措施 复现过程 结语 前言 在网络安全的复杂生态中&#xff0c;系统漏洞的探索与防范始终是保障数字世界安全稳定运行的关键所在。Linux Samba 作为一款在网络共享服务领域应用极为广泛的软件&#xff0c;其低版本中…...

安卓(android)实现注册界面【Android移动开发基础案例教程(第2版)黑马程序员】

一、实验目的&#xff08;如果代码有错漏&#xff0c;可查看源码&#xff09; 1.掌握LinearLayout、RelativeLayout、FrameLayout等布局的综合使用。 2.掌握ImageView、TextView、EditText、CheckBox、Button、RadioGroup、RadioButton、ListView、RecyclerView等控件在项目中的…...

【 AI agents】letta:2024年代理堆栈演进(中英文翻译)

The AI agents stack AI 代理堆栈 November 14, 2024 11月 14, 2024原文: The AI agents stack官方教程教程学习笔记: 【memgpt】letta 课程1/2:从头实现一个自我编辑、记忆和多步骤推理的代理Understanding the AI agents landscape 了解 AI 代理环境 Although we see a …...

Java中 instanceof 的用法(详解)

目录 引言 基本语法 基本作用 1. 检查对象是否是指定类的实例 2. 检查对象是否是子类的实例 3. 检查对象是否实现某个接口 4.null 处理 错误分析&#xff1a; 5.综合对比示例 最后总结 注意事项 引言 instanceof 概念在多态中引出&#xff0c;因为在多态发生时&…...

联想拯救者R720笔记本外接显示屏方法,显示屏是2K屏27英寸

晚上23点10分前下单&#xff0c;第二天上午显示屏送到&#xff0c;检查外包装没拆封过。这个屏幕左下方有几个按键&#xff0c;按一按就开屏幕、按一按就关闭屏幕&#xff0c;按一按方便节省时间&#xff0c;也支持阅读等模式。 显示屏是 &#xff1a;AOC 27英寸 2K高清 100Hz…...

【RocketMQ 存储】- 一文总结 RocketMQ 的存储结构-基础

文章目录 1. 前言 本文章基于 RocketMQ 4.9.3 1. 前言 RocketMQ 存储部分系列文章&#xff1a; 【RocketMQ 存储】- RocketMQ存储类 MappedFile 【RocketMQ 存储】- 一文总结 RocketMQ 的存储结构-基础 【RocketMQ 存储】- 一文总结 RocketMQ 的存储结构-基础...

S4 HANA明确税金本币和外币之间转换汇率确定(OBC8)

本文主要介绍在S4 HANA OP中明确明确税金本币和外币之间转换汇率确定(OBC8)相关设置。具体请参照如下内容&#xff1a; 明确税金本币和外币之间转换汇率确定(OBC8) 以上配置&#xff0c;我们可以根据不同公司代码所配置的使用不同的汇率来对税金外币和本币之间进行换算。来针对…...

Cocos Creator 3.8 2D 游戏开发知识点整理

目录 Cocos Creator 3.8 2D 游戏开发知识点整理 1. Cocos Creator 3.8 概述 2. 2D 游戏核心组件 (1) 节点&#xff08;Node&#xff09;与组件&#xff08;Component&#xff09; (2) 渲染组件 (3) UI 组件 3. 动画系统 (1) 传统帧动画 (2) 动画编辑器 (3) Spine 和 …...

梯度提升用于高效的分类与回归

使用 决策树&#xff08;Decision Tree&#xff09; 实现 梯度提升&#xff08;Gradient Boosting&#xff09; 主要是模拟 GBDT&#xff08;Gradient Boosting Decision Trees&#xff09; 的原理&#xff0c;即&#xff1a; 第一棵树拟合原始数据计算残差&#xff08;负梯度…...

【单细胞第二节:单细胞示例数据分析-GSE218208】

GSE218208 1.创建Seurat对象 #untar(“GSE218208_RAW.tar”) rm(list ls()) a data.table::fread("GSM6736629_10x-PBMC-1_ds0.1974_CountMatrix.tsv.gz",data.table F) a[1:4,1:4] library(tidyverse) a$alias:gene str_split(a$alias:gene,":",si…...

设计模式 - 行为模式_Template Method Pattern模板方法模式在数据处理中的应用

文章目录 概述1. 核心思想2. 结构3. 示例代码4. 优点5. 缺点6. 适用场景7. 案例&#xff1a;模板方法模式在数据处理中的应用案例背景UML搭建抽象基类 - 数据处理的 “总指挥”子类定制 - 适配不同供应商供应商 A 的数据处理器供应商 B 的数据处理器 在业务代码中整合运用 8. 总…...

新春登蛇山:告别岁月,启航未来

大年初一&#xff0c;晨曦透过薄雾&#xff0c;温柔地洒在武汉的大街小巷。2025 年的蛇年春节&#xff0c;带着新春的喜气与希望悄然而至。我站在蛇山脚下&#xff0c;心中涌动着复杂的情感&#xff0c;因为今天&#xff0c;我不仅将与家人一起登山揽胜&#xff0c;更将在这一天…...

hive:基本数据类型,关于表和列语法

基本数据类型 Hive 的数据类型分为基本数据类型和复杂数据类型 加粗的是常用数据类型 BOOLEAN出现ture和false外的其他值会变成NULL值 没有number,decimal类似number 如果输入的数据不符合数据类型, 映射时会变成NULL, 但是数据本身并没有被修改 创建表 创建表的本质其实就是在…...

安装最小化的CentOS7后,执行yum命令报错Could not resolve host mirrorlist.centos.org; 未知的错误

文章目录 安装最小化的CentOS7后&#xff0c;执行yum命令报错"Could not resolve host: mirrorlist.centos.org; 未知的错误"错误解决方案&#xff1a; 安装最小化的CentOS7后&#xff0c;执行yum命令报错"Could not resolve host: mirrorlist.centos.org; 未知…...

WinAuth加密机制详解:如何保护你的认证密钥安全 [特殊字符]

WinAuth加密机制详解&#xff1a;如何保护你的认证密钥安全 &#x1f510; 【免费下载链接】winauth Authenticator on Windows for Battle.net / Steam / Guild Wars 2 / Glyph / Runescape / SWTOR / Bitcoin and digital currency exchanges 项目地址: https://gitcode.co…...

轻量级包管理器LPM指南:从原理到实践,构建高效软件依赖管理方案

1. 项目概述&#xff1a;一个为开发者而生的轻量级包管理器指南如果你是一名开发者&#xff0c;尤其是经常在Linux或macOS环境下工作的开发者&#xff0c;那么“包管理器”这个词对你来说一定不陌生。从系统级的apt、yum、brew&#xff0c;到语言级的npm、pip、cargo&#xff0…...

3分钟看懂无人机飞行日志:免费在线工具让数据说话

3分钟看懂无人机飞行日志&#xff1a;免费在线工具让数据说话 【免费下载链接】UAVLogViewer An online viewer for UAV log files 项目地址: https://gitcode.com/gh_mirrors/ua/UAVLogViewer 还在为看不懂无人机飞行日志而烦恼吗&#xff1f;那些密密麻麻的数据、复杂…...

面试时被问“你的缺点是什么”,这样回答反而加分

面试中&#xff0c;当面试官看似随意地问出“你的缺点是什么”时&#xff0c;空气往往会突然安静几秒。对软件测试工程师而言&#xff0c;这个问题尤其微妙——我们每天都在和“找茬”打交道&#xff0c;对缺陷和风险有着本能的敏感。然而&#xff0c;面试官抛出这个问题&#…...

Linux进程诊断利器whatdiditdo:实时快照工具原理与实战

1. 项目概述&#xff1a;一个“透明”的进程监控器最近在折腾一个自动化脚本&#xff0c;它时不时会卡住&#xff0c;但日志里又看不出个所以然。排查这种问题&#xff0c;最直接的想法就是看看这个进程到底在“干什么”——它在读写哪些文件&#xff1f;调用了哪些系统调用&am…...

Linux下Vivado安装卡死解决方案:手动配置与深度排查指南

1. 问题定位&#xff1a;为什么Vivado安装会“卡”在最后一步&#xff1f;如果你在Linux系统上安装Xilinx Vivado时&#xff0c;遇到了安装程序进度条走到最后&#xff0c;却迟迟不结束&#xff0c;甚至界面卡死、无响应的情况&#xff0c;先别急着砸键盘。这几乎是每一位从Win…...

NumPy 使用指南

一、为什么选择 NumPy 而非 Python 列表Python 原生列表&#xff08;list&#xff09;虽能存储数组形式的数据&#xff0c;但存在显著性能缺陷&#xff1a;内存效率低&#xff1a;列表存储的是对象指针&#xff0c;即使存储简单数值&#xff08;如 [0,1,2]&#xff09;&#xf…...

Docker Compose实战:一键部署OpenClaw项目与环境管理

1. 项目概述&#xff1a;一个为OpenClaw项目量身定制的Docker助手 如果你正在折腾一个名为OpenClaw的开源项目&#xff0c;并且被它复杂的依赖环境、繁琐的配置步骤搞得焦头烂额&#xff0c;那么你很可能需要“vivganes/openclaw-docker-helper”这个工具。简单来说&#xff0…...

朋升爱生活

我爱生活。...

终极Vue 3日期时间选择器:如何构建企业级日期处理解决方案

终极Vue 3日期时间选择器&#xff1a;如何构建企业级日期处理解决方案 【免费下载链接】vue3-date-time-picker Datepicker component for Vue 3 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-date-time-picker Vue3-DateTime-Picker是一个基于Vue 3 Composition …...