一个栈的初始状态为空。现在依次进行以下操作:push(1), push(2), pop(), push(3), push(4), pop(), pop()。 请问最终栈的状态是什么?(栈顶元素在右侧)
答案解析
本题考察栈的入栈和出栈操作。核心考点是栈的后进先出(LIFO)特性。解题思路是模拟操作过程,展示栈内元素的变化。初始栈为空,操作步骤如下:
1. push(1): 栈变为 |1|
2. push(2): 栈变为 |1|2|
3. pop(): 栈变为 |1|,弹出2
4. push(3): 栈变为 |1|3|
5. push(4): 栈变为 |1|3|4|
6. pop(): 栈变为 |1|3|,弹出4
7. pop(): 栈变为 |1|,弹出3
所以,最终栈的状态是|1|。
选项 A. |1|3|, 错误,pop了3
选项B.|1|4|, 错误,不符合pop操作
选项C. |1|,正确,为最终栈的状态
选项 D.|3|, 错误,不符合push,pop顺序
易错点:对栈的操作顺序理解错误,没有按照LIFO原则进行出栈操作。
正确答案:C