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这样的容器。这个只需知道了解就行了。
热门推荐
黔西南州万峰林景区:世界锥状喀斯特峰林地貌发育最典型区域
从《猫和老鼠》看生存哲学:一场永不停止的追逐游戏
东欧科学家揭秘:猫咪捕鼠真相大起底!
植物神经功能紊乱怎么检查
揭秘植物神经功能紊乱的源头与治愈之道:守护你的身心健康
女子皮肤瘙痒,以为过敏没在意,医生无奈:耽误太久了,是癌症! 警惕身体的警示信号
牛油果,真的很能“打”?
福鼎白茶五大核心产区,到底孰优孰劣?
家常清蒸鳕鱼:简单美味与健康的完美结合
漓江最美打卡地:20元背景图“黄布倒影”
抗美援朝中的“三三制”战术揭秘
钻床夹具如何选择
烈士暮年,壮心不已:60岁以后的曹操、刘备、孙权,都在做什么?
里拉琴:古希腊音乐文化的灵魂
洁面美容仪:护肤黑科技还是智商税?
槟城十大景点全攻略:从世界文化遗产到地道美食
山茱萸泡酒全攻略:从选材到饮用,详解养生泡酒之道
西安地铁5号线:一条穿越千年的文化之旅
成都地铁5号线:职场人通勤新宠!
重庆人的避暑天堂:北碚偏岩古镇全攻略
重庆明清客栈:300年历史建筑里的现代民宿
温州市燃气集团客服电话及安全用气全攻略
温州市燃气集团教你冬季用气安全
春节倒计时:人日习俗大揭秘!
二十四节气:从农业文明到命理智慧
健康小贴士:肚脐眼中的泥,抠还是不抠
中国十大春节旅游目的地 国内适合过年去旅游的十大城市 春节热门城市
纽约大学教授揭秘:音乐如何治愈心灵
夏威夷果怎么挑?四步教你选好坚果!
春天最不能忘记吃的菜,好吃又营养,减肥、控糖都很合适!