首页 > 试题广场 >

假设有一个栈,元素依次进栈的顺序是A,B,C,D,E。下列不

[单选题]

假设有一个栈,元素依次进栈的顺序是A,B,C,D,E。下列不可能的出栈顺序是( )

  • E,D,C,B,A

  • A,B,C,D,E

  • B,C,D,E,A

  • E,A,B,C,D

↓代表进栈,↑代表出栈。

A选项:A,B,C,D,E,E, D, C, B, A

B选项:A, A,B, B,C, C,D, D,E, E

C选项:A, B, B, C, C,D, D,E, E, A

D选项:无法实现

发表于 2021-07-16 11:41:12 回复(4)
1. 基于栈的先进后出原则 - 栈的操作遵循先进后出(First In Last Out,FILO)的原则。 - 对于选项A,元素依次进栈后,依次出栈可以得到E,D,C,B,A的顺序。 - 对于选项B,元素依次进栈一个就出栈一个,也可以得到A,B,C,D,E的顺序。 - 对于选项C,A进栈后B进栈,B出栈,C进栈,C出栈,D进栈,D出栈,E进栈,E出栈,最后A出栈,也能得到B,C,D,E,A的顺序。 2. 一眼判断的方法 - 当看到选项D时,E先出栈,说明此时栈内元素从栈顶到栈底依次为E,D,C,B,A(因为E要先出栈,必须A - D都已经进栈)。那么下一个出栈的不可能是A,因为按照栈的先进后出原则,A是最先进栈的,应该最后出栈,所以选项D不可能。
发表于 2024-11-03 14:43:34 回复(0)