早教吧 育儿知识 作业答案 考试题库 百科 知识分享

有点不明白,入栈出栈不是说先进后出,那既然入的顺序定了,出的顺序不是只有一种?1.有5个元素,其入栈次序为:A、B、C、D、E,在各种可能的出栈序列中,以元素C第一个出栈,D第二个出栈

题目详情
有点不明白,入栈出栈不是说先进后出,那既然入的顺序定了,出的顺序不是只有一种?
1.有5个元素,其入栈次序为:A、B、C、D、E,在各种可能的出栈序列中,以元素C第一个出栈,D第二个出栈的序列有哪几个?请分别说明理由。
求解释.谢谢
▼优质解答
答案和解析
题目中并没有说一定是所有元素入栈结束了,再出栈的。所以,出栈入栈同时进行时,出栈顺序就不确定了,会有非常多的情况。比如三个元素:ABC,A入,B入,B出,C入,C出,A出,则出栈顺序为BCA。C第一个出,D第二出的序列有:CDEBA,CDBEA,CDBAE。简单说,因为A比B先入栈,所以就是B一定比A先出栈。