根据入栈顺序判断出栈顺序是否合理的傻瓜式方法

先来看个题

设1, 2, 3, 4, 5,6以所给的次序进栈, 若在进栈操作时, 允许出栈操作, 则下面得不到的序列为( )
A. 654321
B. 231654
C. 435621
D. 312456

 方法如下:以B为例

  • 第一步:用 2 和后边的比,找出比 2 小的数, 2 3 1 6 5 4 ;黄色的数是按照降序排列即为合理。
  • 第二步:用 3 和后边的比,找出比 3 小的数, 2 3 1 6 5 4 ;黄色的数是按照降序排列即为合理。
  • 第三步:用 1 和后边的比,找出比 1 小的数, 2 3 1 6 5 4 ; 没找到,也为合理。
  • 第四步:用 6 和后边的比,找出比 6 小的数, 2 3 1 6 5 4 ;黄色的数是按照降序排列即为合理。
  • 第五步:用 5 和后边的比,找出比 5 小的数, 2 3 1 6 5 4 ;黄色的数是按照降序排列即为合理。
  • 剩一个,不用比了。在以上比较过程中,都合理,此选项就合理。

再举个不合理的例子:以D为例

  • 第一步:用 3 和后边的比,找出比 3 小的数, 3 1 2 4 5 6 ;黄色的数不是按照降序排列的,不合理该选项不合理!!!

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

接下来多看几个例题

某栈的输入序列为a, b, c, d,下面的4个序列中,不可能为其输出序列的是()。
A. a, b, c, d
B. c, b, d, a
C. d, c, a, b
D. a, c, b, d

选项C不合理

第一步:用 d 和后边的比, 找出比 d 小的,d, c, a, b; 黄色的不是按照降序排列的,不合理

  • 11
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Eva_5433

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

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

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

打赏作者

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

抵扣说明:

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

余额充值