有六个元素 6,5,4,3,2,1的顺序进栈,问下列哪一个不是合法的出栈序列?( )
A 543612 B 453216 C 346521 D 234156
分析:
注 该题指的出栈不是一次性出栈,如果是指一次性的出栈 则只有唯一的顺序: 123456
该题的出栈是指可随时进出栈
又因为是按顺序进栈 所以 如果 5进栈了 那么6一定在栈内了 同理 5 进栈了 下一个进栈的就是4
根据栈的特点 先进后出 后进栈的在栈顶,先进栈的在栈底 因此分析如下:
A 5出栈 则 5 6 都在栈内(顶-底) 所以 5出栈 栈内留6 4进栈 4再出栈 3 进栈 3再出栈 6出栈 这时 栈内无元素 然后 21 进栈 (顺序进栈) (12 )(顶-底) 所以 1出栈 最后 2出栈
B 4出栈 则 456都在栈内 4,5 出栈 则栈内留6 3 进栈再出栈 2 进栈再出栈 1进栈再出栈 最后 6 出栈
C 3出栈 则 3456都在栈内 3,4 出栈 之后应该是5出栈 不能是6出栈
D 2出栈 则 23456都在栈内 2,3,4出栈 之后 1进栈再出栈 然后 5,6 出栈
答案: C