一个栈的初始状态为空。现在有一系列元素,以 a, b, c, d 的顺序依次入栈。在入栈的过程中,可以随时进行出栈操作。下列哪个序列不可能成为可能的出栈序列?

答案解析

核心考点说明:本题考察栈的后进先出(LIFO)特性以及入栈和出栈操作对序列的影响。 解题思路分析:栈的特性是后进先出,即最后入栈的元素最先出栈。在给定入栈顺序的情况下,出栈顺序的特点是:如果某个元素出栈,那么之后入栈的元素必须在当前元素出栈之后才能出栈,除非中间有其它元素先出栈。 选项分析: A:正确。入栈顺序a,b,c,d,可以先入栈a,b,c,d,然后依次出栈,得到d,c,b,a。 B:正确。入栈a,出栈a,入栈b,出栈b,入栈c,出栈c,入栈d,出栈d,得到a,b,c,d。 C:错误。要得到a,c,d,b序列,a入栈并出栈,b入栈,此时c必须在b之后入栈,则要得到c,必须先把b出栈,不可能出现先出栈c,d。因此,这个序列不可能。 D:正确。入栈a,b,c,出栈c,入栈d,出栈d,出栈b,出栈a,得到c,d,b,a。 易错点提醒:容易混淆栈的入栈顺序和出栈顺序,忽略后进先出的特性。
正确答案:C
随机推荐
开始刷题