C++中stack的用法及其解析
创作时间:
作者:
@小白创作中心
C++中stack的用法及其解析
引用
CSDN
1.
https://blog.csdn.net/qq_61638928/article/details/137088012
C++中的stack是一种非常重要的容器适配器,它遵循后进先出(LIFO)的原则,在很多场景中都有广泛的应用。本文将从stack的基本概念、使用方法到其底层实现原理进行全面解析,帮助读者系统地掌握这一重要数据结构。
一、stack的介绍
- stack是一个容器适配器,它的名字叫做栈
专门用在后进先出的上下文环境中的,它的删除与插入操作只能从容器的一端进行。形象一点,就好像一个容器里放东西,先放进去的就在底部,要想拿出来,就得先把上面(后面放的)先拿出来。和排队是反着干,后面来的,反而先得到解决。
注意:虽然他和内存中的栈帧都是后进先出,但他们是两个完全不同的概念。
栈帧是内存中的一个区域,二stack是一种数据结构。
stack的样子like this
它需要包含头文件
#include<stack>
二、stack的使用
1.stack的初始化和定义
先定义一个容器:我们可以选择一些数据存进去即可。
//<>内是想让stack里存入的数据类型
stack<int>s1; //一个储存数据类型为int的stack容器s1
stack<double>s2; //一个储存数据类型为double的stack容器s2
stack<string>s3; //一个储存数据类型为string的stack容器s3
2.stack的操作
stack的提供的函数有:
- empty():判断stack是否为空
- size():stack的大小
- top():栈顶元素
- push():入栈
- pop():出栈
下面展示了上面五个操作,同时也是stack的遍历方式:首先判断stack里有没有元素,我们只需每次取出栈顶元素,然后让他出栈,依次打印栈里的内容。
stack的基本操作就是这些,但是要在实际应用中才能感受到stack的强大。
三、stack的底层实现
- stack叫做适配器,是因为他的底层是调用了deque的容器,deque就是类似vector这样的容器。这个只需知道了解就行了。
热门推荐
科技助力大棚番茄抢“鲜”上市
孙尚香缘何嫁给半百的刘备,传说中的孙、刘爱情故事,真的存在吗
机油全合成的好还是半合成的好?
余承东央视揭秘鸿蒙智行:智能驾驶突破10亿公里,四大品牌矩阵引领新能源汽车新标杆
科技赋能教育创新:潍坊广文中学的素质教育探索
清华浙大如何用素质报告优化人才方案?
如何写好一份有温度的素质报告
高途美好家庭教你破解15岁男孩手机沉迷难题
浙大儿院专家:破解孩子手机沉迷难题,这五招最有效
英语课堂教学互动
新乡市冬季空气质量预警:风速影响大
新乡市书记市长联手治污,空气质量能否逆袭?
《哪吒2》豆瓣评分上涨、预测总票房将超55亿,《封神第二部》全面崩盘
10部英文电影经典台词,总有一句戳到你
“自己吓自己”:电影金句踏上商标注册征程
智汇医工 赋能医疗新生态 西安交通大学第十五届医工协同科技创新学术年会召开
西安国际医学中心医院引进全球首款128通道无液氦脑磁图
巴塞罗那智慧城市建设:用数据和技术塑造未来城市
上海浦东塘桥街道打造“三口一视界”,提升社区治理精细化水平
API认证机油如何看
判断汽车机油好坏的标准是什么?如何根据车辆型号选择合适的机油?
MBTI十六型人格测试(93题版)-16personalities
MBTI性格类型解读:16种类型及应用
2024婚纱礼服细节工艺分析 | 9种趋势助你的礼服设计高级感拉满~
央媒谈学生举报导师:导师就是导师,非“师父”更非“老板”
美国学校如何与导师合作开展活动
景洪市冬季出游指南:保暖装备大揭秘
李丹老师教你如何通过校园活动提升情绪管理能力
初二生情绪管理新招:家长必看!
大黄蜂老师教你青春期情绪管理