栈----判断正确的出栈序列

栈----判断正确的出栈序列

1. 设元素进栈的次序是a,b,c,d,e…

设元素进栈的次序是a,b,c,d,e。试问,在下面所列的6种元素序列里,哪些可以是这个栈的出栈序列?
A.c,e,a,b,d B.c,b,a,d,e C.d,c,a,b,e
D.a,c,b,e,d E.a,b,c,d,e F.e,a,b,c,d

栈遵循先进后出原则,来先推一下

  • A选项,c打头,那么出的顺序是c,b,a,显然A选项错误
  • B选项,c打头,a-b-c进c-b-a出,d进d出,e进e出,正确
  • C选项,d打头,那就是出d-c-b-a,c错误
  • D选项,a进a出,b-c进c-b出,d-e进e-d出,正确
  • 最后两个自己练习
正确答案:
Qi9EL0U= (Base64加密)解码自行查看https://tool.oschina.net/encrypt?type=3

2. 设有6个元素a1、a2、a3、a4、a5、a6

设有6个元素a1、a2、a3、a4、a5、a6,它们以此顺序依次进栈。假定要求它们的出栈顺序是a4、a3、a2、a6、a5、a1,那么应该如何安排push和pop操作序列?


  • a1 push
  • a2-a3-a4 push
  • a4-a3-a2 pop
  • a5-a6 push
  • a6-a5 pop
  • a1 pop

3.若一个栈的进栈序列是1、2、3、4

若一个栈的进栈序列是1、2、3、4,那么要求出栈序列为3、2、1、4时,进、出栈操作的顺序应该是 ____ 。(注:所给顺序中,I表示进栈操作,O表示出栈操作)
A.IIIOOOIO B.IOIOIOIO C.IIOOIOIO D.IOIIIOOO


A
解答:依据先进后出原则,1-2-3进,出3-2-1,然后4进4出

4.栈与队列各自具有什么样的逻辑特点?它们之间又有什么共同点

  • 逻辑特点:队列先进先出,栈先进后出
  • 共同点:从"数据结构"的角度看,它们都是线性结构,即数据元素之间的关系相同
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员鱼丸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值