回 帖 发 新 帖 刷新版面

主题:初学<数据结构>,堆栈题不懂??????

选择题:
一个栈的入栈序列是a,b,c,d,e; 则栈的不可能的输出序列是( ).
a,edcba        b.decba        c.dceab      d.abcde

书上答案是c
但是我不懂出栈序列b,d为什么也是正确的啊?????
谁能帮解释下,小弟万分感谢!!

回复列表 (共18个回复)

沙发

模拟一下,用手工做做就知道了。

c答案:d出来的时候,栈里有abc,c出,栈里有ab,e进,e出,然后要a出来是不可能的,有b在栈顶,b必须先a出来。

板凳

只要抓住---先进后出---原则就不难理解了
先进栈的不可能比后进栈的先出

3 楼

..

4 楼


2楼得这个应该是不对得吧  先进不一定要要后出得   比如答案种得D 
这个其实没有一个定则得   在看题得时候推下就行了

5 楼


我还是看不明白,再说清楚点啊

6 楼

对的,只要遵守“先进先出”

7 楼

d就是放一个就拿出来一个。。遵守先进后出的原则吧。。我们的课刚好讲到这。。
是先进后出的原则。。。但是进出的顺序有你来想。。所以可以是d答案。。

8 楼

看了三遍了这道题,三次点开还是这样

9 楼


只要遵守后进先出的原则肯定能解这个,我菜鸟顶下

10 楼

有没有说5个要一次性入展

我来回复

您尚未登录,请登录后再回复。点此登录或注册