前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个栈的输入序列为1 2 3 4 5 的出站顺序的理解

一个栈的输入序列为1 2 3 4 5 的出站顺序的理解

作者头像
全栈程序员站长
发布2022-08-05 09:24:48
3410
发布2022-08-05 09:24:48
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

一个栈的输入序列为1 2 3 4 5 的出站顺序是什么?这个经常会在面试的时候出现。

如何判断栈的进出问题一个栈的输入序列为1 2 3 4 5,则下列序列中不可能是栈的输出序列的是( )A. 2 3 4 1

解答:

一个栈的输入序列为1 2 3 4 5,则下列序列中不可能是栈的输出序列的是( ) A.2 3 4 1 5 B.5 4 1 3 2C.2 3 1 4 5 D.1 5 4 3 2 这题就选B 这样的题做多了就找出规律了 先进1和2,2出栈进入3,3出栈,进入4,4出栈,1在出栈,5进,5出栈,所以是23415,A对 进1和2,2出栈进入3,3出栈,进入4,在进入5,5出,4在出,就是23145,C对 1进,1出,2345进,然后5432出,就是15432,D对 B是错误,因为5要想出来,就必须五个数都要进栈,那么出来就一种结果是54321,答案是54132所以不对 这种题找规律,就能做出来

我们都知道栈是先进后出的,可以理解为桶状结构,

对于上面那种不可能的情况可按下图理解:

5最先出来说明其他的四个都没有出来,那么这四个的顺序就必须安照进来的先后顺序依次排列,这就要符合先进后出的原理,出来只有一个通道,下面的数字必须在后面才能出来。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106134.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档