一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是

一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是 C 。
A.edcba B.decba C.dceab D.abcde

栈不是先进后出吗,为什么只有C不行

A:a,b,c,d,e进,之后依次出栈
B:a,b,c,d,进,d出,e进,e,c,b,a出
D:a进a出,b进b出……e进e出
C:的话dce都好办,之后的ab做不到
这道题就是没告诉你进栈的同时可以随时出栈==追问

dce为什么好办了

追答

dce的话是a,b,c,d入栈,d,c出栈,e入、出

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-07-15

d,c,e,a,b 

解析:

情况1是abcde先入栈,然后依次出栈,正好是edcba

情况2是abcd先依次入栈,然后d出栈,e再入栈,e出栈

情况3是错误的,不可能a比b先出栈,因为开始时a已经先入栈了

情况4是a入栈,然后a出栈;b再入栈,b出栈。。。。。。依此类推

扩展资料:

进栈相关举例:

例如:有一个数列(23,45,3,7,3,945)

先对其进行进栈操作,则进栈顺序为:23,45,3,7,3,945

在对其进行出栈操作,则出栈顺序为:945,3,7,3,45,23

为了方便,通常做到:出栈后不再进栈。

进栈出栈就像只有一个口的长筒,先把数据一个个放入筒内,而拿出的时候只有先拿走上边的,才能拿走下边的。

本回答被网友采纳
相似回答