C++ <queue>队列的priority_queue<int,vector<int>等的用法(本博主原创<C++>queue(队列)的详解

点击蓝字

15f7cbf223d5e5031f10aca4fa285e5e.png

关注我们

首先,

在C++中,队列(queue)是一种先进先出(FIFO)的数据结构,可以用来存储和访问数据。C++标准库中提供了队列的实现,可以通过包含头文件<queue>来使用。

C++中的队列是 由二叉堆 实现的。 默认是使用 大根堆 实现。

优先队列的  基本操作 :

        empty()  :如果队列为空返回真

        pop()    : 删除队顶元素

        push()     入队一个元素

        size()      返回优先队列中拥有的元素个数

        top()        返回优先队列队顶元素

以下将从priority_queue、

              priority_queue<int,vector<int>,greater<int>>、

              priority_queue<int,vector<int>,less<int>>

来进行讲解和代码实现

1.priority_queue(大根堆实现);

运行代码:

#include<iostream>
#include<queue>//也可以用万能头文件:#include<bits/stdc++.h>
using namespace std;
int stl[10]={3,5,6,2,1,-8,10,4,-7,-6};
int main(){priority_queue<int> q;for (int i=0;i<10;i++){q.push(stl[i]);}for (int i=0;i<10;i++){cout<<q.top()<<endl;q.pop();}
}

运行结果(输出)

2.priority_queue<int,vector<int>,greater<int>> (最小值队列实现)

运行代码:

#include<iostream>
#include<queue>//也可以用万能头文件:#include<bits/stdc++.h>
using namespace std;
int stl[10]={3,5,6,2,1,-8,10,4,-7,-6};
int main(){priority_queue<int, vector<int>, greater<int>> q;for (int i=0;i<10;i++){q.push(stl[i]);}for (int i=0;i<10;i++){cout<<q.top()<<endl;q.pop();}
}

运行结果(输出)

3.priority_queue<int,vector<int>,less<int>>(最大值队列实现)

运行代码:

#include<iostream>
#include<queue>//也可以用万能头文件:#include<bits/stdc++.h>
using namespace std;
int stl[10]={3,5,6,2,1,-8,10,4,-7,-6};
int main(){priority_queue<int, vector<int>,less<int>> q;for (int i=0;i<10;i++){q.push(stl[i]);}for (int i=0;i<10;i++){cout<<q.top()<<endl;q.pop();}
}

运行结果(输出)

小编创作不易,请一键三联支持一下,我们下期再见!

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。https://i-blog.csdnimg.cn/blog_migrate/7b6b6ae05eb4e50e122fff4719f5ed7b.gif
                        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/57219.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

15分钟学Go 第1天:Go语言简介与特点

Go语言简介与特点 1. Go语言概述 Go语言&#xff08;又称Golang&#xff09;是由谷歌于2007年开发并在2009年正式发布的一种开源编程语言。它旨在简单、高效地进行软件开发&#xff0c;尤其适合于网络编程和分布式系统。 1.1 发展背景 多核处理器&#xff1a;随着计算机硬件…

10.22 软考初级网络管理员之局域网

局域网的基本概念&#xff0c;IE802标准 局域网是指将分散在一个局部地理范围的多台计算机通过传输媒体连接起来的通信网络。IEEE802&#xff0c;对应物理层和数据链路层 IE802标准 以太网技术&#xff08;局域网通信协议、数据传输方式&#xff09; 分值占比高 ‌‌以太网是…

Maven - Assembly实战

文章目录 PreAssembly插件基本配置使用示例示例1&#xff1a;创建包含依赖的JAR包示例2&#xff1a;自定义描述符示例3&#xff1a;多模块项目打包 实战 _qiwenfile结构pom.xml触发脚本 实战 _nacos输出 zip / tar.gz常见问题及解决方案 Pre Spring Boot - 瘦身大作战&#xf…

【解决proto文件生成的java 在intellij idea引用会报错】

现象 下载新项目 代码有引用proto生成的java类 会一直报红 我的idea版本2024.2.3&#xff0c;比较新&#xff0c;自动装载了插件&#xff0c;旧版本需要自己装 解决方式 Maven生成资源 这一步是为了先从proto生成java文件 安装这个插件 右键项目->Maven->Generated…

关于检索评价的一份介绍

在信息检索中&#xff0c;当我们进行完检索评价后就需要对于检索所得的结果进行评价&#xff0c;类似于机器学习中的模型评估那样&#xff0c;因此我们需要一些度量方式来对于信息检索的结果进行评价。 在这篇文章中&#xff0c;我就将介绍一些标准用于度量信息检索的结果。具…

双十一宠物空气净化器应该专门选才不踩坑?有哪几款推荐

对于我来说&#xff0c;双十一可以什么都不买&#xff0c;唯独不能缺了宠物空气净化器。 还不是养的“逆子”掉毛太严重了&#xff0c;很多次都是和我家猫待在一起的时候就会发现手机屏幕上都是猫毛&#xff0c;更过分的是就连鼻子里、眼睛里都是猫毛。我也不是没试过用其它除毛…

Java动态代理 | 代码实现Demo

一、代码实现 1. 编写UserService接口 import java.util.List;public interface UserService {/*** 登录*/void login(String userName, String password);/*** 查询用户列表*/List<String> getUserList(); }2. 编写UserService接口实现类 import java.util.Arrays; i…

JS两数之和

文章目录 &#x1f453;题目描述&#x1f576;思路&#x1f97c;方法一&#x1f9e4;方法二&#x1fa72;方法三&#x1f9e5;总结 &#x1f453;题目描述 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&am…

VScode运行C语言终端输出中文乱码问题解决方案

VScode运行C语言输出中文乱码问题解决方案 由于 VSCode 的终端是对系统的 cmd 命令行工具的调用&#xff0c;而 cmd 的默认编码为 GBK。当我们在 VSCode 中以 UTF-8 编码进行代码编写且代码里含有中文字符时&#xff0c;在终端运行代码便会出现中文乱码现象。要解决此问题&…

mysql查看和修改默认配置

1.查看最大连接数 SELECT max_connections; 或者 SHOW VARIABLES LIKE max_connections;2.查看当前连接的客户端 SHOW PROCESSLIST;2.临时设置最大连接数 SET GLOBAL max_connections 500;3.临时设置连接客户端交互超时时间 SET GLOBAL interactive_timeout 1800;4.永久生…

R语言机器学习算法实战系列(六)K-邻近算法 (K-Nearest Neighbors)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍教程下载数据加载R包导入数据数据预处理数据描述数据切割调节参数构建模型预测测试数据评估模型模型准确性混淆矩阵模型评估指标ROC CurvePRC Curve保存模型总结优点:缺点:系统信…

【Linux】僵尸进程和孤儿进程

一、僵尸进程 何为僵尸进程&#xff1f; 在 Unix/Linux 系统中&#xff0c;正常情况下&#xff0c;子进程是通过父进程创建的&#xff0c;且两者的运行是相互独立的&#xff0c;父进程永远无法预测子进程到底什么时候结束。当一个进程调用 exit 命令结束自己的生命时&#xff…

移除Microsoft Edge浏览器“由你的组织管理“提示的方法

背景&#xff1a; 点击Microsoft Edge浏览器右上角的按钮有时候会出现提示“由你的组织管理”。但实际上自己的电脑并没有被公司或其他企业管理。 解决方案&#xff1a; 提示&#xff1a;修改注册表如果操作不当会影响电脑&#xff0c;请提前备份注册表&#xff01;&#xff…

【Linux】【命令】diff

diff DescriptionsArgumentsExamples直接使用diff命令-u 输出格式-c 输出格式并列输出-s 和 -q 脚本示例示例1&#xff1a;目录及文件差异 Descriptions diff命令用于对比两个文件或者两个文件夹的不同之处&#xff0c;求基本语法如下所示&#xff1a; diff [OPTION]... FILES…

ue5 扇形射线检测和鼠标拖拽物体

这里的NumTrace是要发射几根射线&#xff0c;Degrees Per Trace是每根射线之间的角度&#xff0c; 例如 要在角色面前实现一个180度的扇形射线检测&#xff0c;就需这两个变量乘起来等于180 TraceLength是射线的长度 下面是鼠标拖动物体逻辑&#xff0c;很简单 这里的Floor和…

Unity DOTS中的Archetype与Chunk

Unity DOTS中的Archetype与Chunk 在Unity中&#xff0c;archetype&#xff08;原型&#xff09;用来表示一个world里具有相同component类型组合的entity。也就是说&#xff0c;相同component类型的entity在Unity内部会存储到一起&#xff0c;共享同一个archetype。 使用这样的设…

一篇文章入门Pytest!

目录 一、安装 二、语法 三、执行 四、前后置setup/teardown 五、fixture 六、数据驱动 七、报告 一、安装 需要安装的库 pytest pytest-html 生成HTML格式的测试报告 pytest-xdist 用例分布式执行&#xff0c;多CPU分发 pytest-ordering …

【Bug】iOS 不支持运行或调试你的项目的上一个生成版本。 请先确保生成解决方案,再运行或调试它。

文章目录 问题问题代码原因解决处理Bug的具体步骤 问题 在windows以hot restart&#xff08;hot restart不需要mac 而pair to mac需要&#xff09;的方式部署到iphone报&#xff1a;不支持运行或调试你的项目的上一个生成版本。 请先确保生成解决方案&#xff0c;再运行或调试…

基于SSM宠物信息交流平台JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

东芝TB67B008FTG三相无刷马达驱动IC

TB67B008FTG是一款无刷直流电机用的三相PWM驱动器&#xff0c;专为无传感器的应用场景设计。它具有一系列突出的功能&#xff0c;使其在现代电机控制中发挥重要作用&#xff0c;尤其是在需要高效、稳定运行的场景中。本文将详细介绍TB67B008FTG的特点、应用以及它在电机控制领域…