STL中的stack与queue

news2024/9/24 3:18:47

前言:

stack与queue是STL中的容器适配器,而不是容器。何为适配器?给手机充电的充电器就是一种适配器,将高电压变成低电压。适配器是用来做转化的,不用来直接管理数据,而是在其他容器的基础上去封装转换。 

容器适配器简介:

容器适配器stack是C++ STL(标准模板库)中的一个组件,它提供了一种后进先出(Last In First Out, LIFO)的数据结构。stack适配器并不直接实现栈的数据结构,而是通过封装其他顺序容器(如vector、deque、list等)来实现栈的功能。

因此stack不是容器,而是为了实现栈的功能的一个适配器,为了支持后进先出,stack等容器适配器取消了迭代器的遍历方式,取消了迭代器的实现。

栈的使用:

主要是为了使用栈的后进先出的性质。


int main()
{
	stack<int> st;
	st.push(1);
	st.push(2);
	st.push(3);
	st.push(4);
	st.push(5);
	st.push(6);

	while (!st.empty())
	{
		cout << st.top() << " ";
		st.pop();
	}

	cout << endl;
	return 0;
}

入栈采用的函数是push,而不是push_back();

当然,我们入123456,不一定出654321。因为我们可以边入边出。

队列的使用:


int main()
{
	queue<int> q;
	q.push(1);
	q.push(2);
	q.push(3);
	q.push(4);
	q.push(5);
	q.push(6);

	while (!q.empty())
	{
		cout << "队列头部"<<q.front() << " ";	//queue用的是front而不是top
		cout << "队列尾部"<<q.back() << " ";
		cout << "队列大小" << q.size() << " ";
		cout << endl;
		q.pop();
	}

	return 0;
}

在出队列的过程中,没有第二种可能,始终是先进先出

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

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

相关文章

WordNet介绍——一个英语词汇数据库

传统语义知识库最常见的更新方法是依赖人工手动更新&#xff0c;使用这种更新方法的语义知识库包括最早的 WordNet、FrameNet和 ILD&#xff0c;以及包含丰富内容的 ConceptNet和 DBPedia。此类语义知识库的特点是以单词作为语义知识库的基本构成元素&#xff0c;以及使用预先设…

C++ | Leetcode C++题解之第376题摆动序列

题目&#xff1a; 题解&#xff1a; class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();if (n < 2) {return n;}int prevdiff nums[1] - nums[0];int ret prevdiff ! 0 ? 2 : 1;for (int i 2; i < n; i) {int diff n…

记一次NULL与空字符串导致的分组后产生重复数据

目录 一&#xff0c;场景说明二&#xff0c;实现功能三&#xff0c;修改原实现方法四&#xff0c;说明 一&#xff0c;场景说明 想实现这样一个功能&#xff0c;统计人员信息中不同性别的人的总工资。 实现方式&#xff1a;将数据group by 分组后累加。 二&#xff0c;实现功…

叉车(工业车辆)安全管理系统,云端监管人车信息运营情况方案

近年来&#xff0c;国家和各地政府相继出台了多项政策法规&#xff0c;从政策层面推行叉车智慧监管&#xff0c;加大叉车安全监管力度。同时鼓励各地结合实际&#xff0c;积极探索智慧叉车建设&#xff0c;实现作业人员资格认证、车辆状态认证、安全操作提醒、行驶轨迹监控等&a…

探秘Facebook的人工智能战略:如何用智能技术重塑社交网络

人工智能&#xff08;AI&#xff09;正以前所未有的速度渗透到各个领域&#xff0c;社交网络也不例外。作为全球最大的社交平台之一&#xff0c;Facebook&#xff08;现Meta&#xff09;正利用人工智能技术重塑其网络环境&#xff0c;提升用户体验。本文将深入探讨Facebook的人…

对SpringBoot项目Jar包进行加密防止反编译

最近项目要求部署到其他公司的服务器上,但是又不想将源码泄露出去,要求对正式环境的启动包进行安全性处理,防止客户直接通过反编译工具将代码反编译出来,本文介绍了如何对SpringBoot项目Jar包进行加密防止反编译,需要的朋友可以参考下 场景: 最近项目要求部署到其他公司的服…

华为HCIP-datacom 真题 (2024年下半年最新题库)

备考HCIP-datacom的小伙伴注意啦 2024年下半年8月份最新题库带解析,有需要的小伙伴移动至文章末 1.BGP 邻居建立过程的状态存在以下几种&#xff1a;那么建立一个成功的连接所经历的状态机顺序是 A、3-1-2-5-4 B、1-3-5-2-4 C、3-5-1-2-4 D、3-1-5-2-4 答案&#xff1a;D 解析…

界面控件DevExpress VCL v24.2路线图预览——增强云集成、简化应用程序皮肤等

DevExpress VCL Controls是Devexpress公司旗下老牌的用户界面套包&#xff0c;所包含的控件有&#xff1a;数据录入、图表、数据分析、导航、布局等。该控件能帮助您创建优异的用户体验&#xff0c;提供高影响力的业务解决方案&#xff0c;并利用您现有的VCL技能为未来构建下一…

el-pagination 下拉条目数最后一个样式改成全部

2024.08.27今天我学习了如何把el-pagination的下拉条目数修改&#xff0c;效果如下&#xff1a; 我们需要把最后一条选择换成全部展示&#xff0c;其实传给后端的还是总的数量&#xff0c;只是换了一个content&#xff0c; 通过f12查看元素可以拿到.el-select-dropdown__item …

华为鸿蒙NEXT大揭秘:微信版功能曝光,简洁界面回归

在科技界&#xff0c;每一次操作系统的更新迭代都是一场期待与猜测的盛宴。华为的鸿蒙系统自问世以来&#xff0c;就以其独特的设计理念和强大的功能吸引了全球的目光。而今&#xff0c;随着微信版鸿蒙NEXT的曝光&#xff0c;我们似乎又将迎来一次科技的飞跃。但这一次&#xf…

【多系统萎缩患者必看!】营养补给站,守护健康每一刻✨

Hey小伙伴们~ 今天我们来聊聊一个需要特别关爱的话题——多系统萎缩&#xff08;MSA&#xff09;患者的营养补充秘籍&#xff01;&#x1f31f; MSA是一种复杂的神经系统疾病&#xff0c;它影响我们的多个身体系统&#xff0c;让每一天的生活都充满了挑战。但别担心&#xff0c…

【工具】轻松解锁SQLite数据库,一窥微信聊天记录小秘密

前言 &#x1f34a;缘由 SQLite里藏秘密&#xff0c;微信聊天有痕迹 &#x1f423;闪亮主角 大家好&#xff0c;我是JavaDog程序狗 今天跟大家分享一个开源小工具PyWxDump&#xff0c;是一个用于获取 wx 账户信息&#xff08;昵称/账户/电话/电子邮件/数据库密钥&#xff0…

利用autoDecoder工具在数据包加密+签名验证站点流畅测试

站点是个靶场 https://github.com/0ctDay/encrypt-decrypt-vuls 演示地址http://39.98.108.20:8085/ 不是仅登录位置暴力破解的那种场景&#xff0c;使用autoDecoder&#xff08;https://github.com/f0ng/autoDecoder&#xff09;的好处就是每个请求自动加解密&#xff0c;测…

35岁失业后,这3个AI副业,也能养活自己

不少粉丝曾问我&#xff0c;有没有用AI赚钱的方法。 *眼看就快到35岁中年危机&#xff0c;想提前安排个退路。* 对于大家的焦虑&#xff0c;我很能理解&#xff0c;花钱容易挣钱难&#xff0c;尤其是在当下&#xff0c;大环境不是那么好&#xff0c;很多人进入佛系状态&#…

【STM32】位带操作

一、位带操作 1.意义 回想以前写51代码 ​ P0 0x10; //将P0端口设置为0x10 P1_01; //将P1端口0号引脚设置为高电平 a P2_2; //获取P2端口2号引脚的电平 根据上述的方法&#xff0c;我们可以发现快速定位修改某个引脚的电平还有获取引脚的状态 2.原因 GPIO_SetBits、GPI…

2025深圳国际微波射频及天线技术应用展览会

2025深圳国际微波射频及天线技术应用展览会 2025 Shenzhen International Microwave RF and Antenna Technology Application Exhibition 时间&#xff1a;2025年04月9-11日 地点&#xff1a;深圳会展中心(福田&#xff09; 详询主办方陆先生 I38&#xff08;前三位&#…

CRMEB 多店版供应商订单管理

订单列表 一、功能介绍 查看所有供应商订单数据&#xff0c;详情&#xff0c;可以提醒发货 根据供应商筛选&#xff0c;可以查看不同类订单 二、操作流程 供应商 &#xff1e; 订单管理 > 订单列表 三、功能说明 售后列表 一、功能介绍 查看所有供应商售后订单数据&a…

一个案例讲透如何做好竞品分析!

随着国内互联网市场进入下半场&#xff0c;各个领域的相关产品层出不穷&#xff0c;即使是新鲜事物&#xff0c;一旦出现&#xff0c;也会迅速造成行业内部拥挤。行业发展如此之快&#xff0c;闭门造车绝对不是产品迭代更新应有的设计方式。敞开大门&#xff0c;出去看看别人家…

基于 Llama factory 微调 Llama3.1-70B-Chinese-Chat

​ 本文旨在探讨基于Llama factory使用LoRA&#xff08;Low-Rank Adaptation&#xff09;技术对Llama3.1-70B-Chinese-Chat模型进行微调的过程&#xff0c;重点介绍在单机多卡和多机多卡两种分布式训练环境下的实现方法。 1.环境准备 1.1 平台环境 微调Llama3.1-70B模型&…

Anthropic 公开 Claude AI 模型的系统提示词

硅纪元快讯栏目&#xff0c;每日追踪AI领域的最新动态&#xff0c;快速汇总最新科技新闻&#xff0c;助您时刻紧跟行业趋势。简明扼要的呈现资讯概要&#xff0c;让您快速了解前沿资讯。 1分钟速览新闻 特斯拉“Cortex”超级计算机亮相&#xff0c;预计10月全面运行 Anthropic…