关于栈的基本描述以及基本操作(C/C++)

栈是线性表的一种特例,都说了与线性表有关了,那么它肯定也能实现某种顺序结构。
接下来,就通俗易懂解释一下栈吧。

栈的特点:先进后出

那么肯定就有萌新会问,栈的特点我知道啊,这么简单的东西,不就四个字吗?“先进后出”!

好家伙,一上手,我cao,咋个实现的呀?咳咳,在这里,在实现代码之前,我还是上个图简要的解释一下流程吧。

未来的大牛们,请睁大你的眼睛(虽然很简单)....(来自弱者的羡慕)

我们把栈比作为一口井,想想,你往井里面放东西,是不是先放的东西在最底下,最后放的东西在最上面,那么要取出你放的东西时,那么肯定就是,最后放的东西先拿出,先放的东西最后拿出了呀。最开始,我们用一个指针(Top)【代表栈顶的意思】,最开始我们什么东西都没有放,所以我们就用Top指向栈底(这里的栈底也就是栈顶的意思,因为栈里面没有元素嘛)。

等等,关键的来了,如果我要往栈里面放元素怎么办?这个Top咋办?其实很简单,我们只需要让Top++就行,(不会忘了++是什么意思了吧?不会吧不会吧?)进行这样的操作后,Top就指向了新放进这个元素的位置了。(入栈

那么我想要出栈怎么办?这里也很简单,其实就是入栈的逆过程,说关键的:Top--就行(出栈

看了那么多文字,很累了吧?(虽然我废话比较多,但毕竟是我第一次发blog嘛,而且还闲的dan疼,嘿嘿嘿)

上代码!!!

1.定义一个栈的结构体

2.对栈进行初始化

3.将栈置空(其实跟栈的初始化一样)

 4.入栈 

5.出栈

6.访问栈中的元素且打印

 7.遍历栈中的每一个元素

 8.求栈中有几个元素

 9.想知道栈顶元素的值

所以,还是挺简单的,对吧?嘻嘻嘻

(来都来了,点个赞再走呗^-^)

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值