在一个使用数组实现的栈中,假设栈底位于数组的高索引位置,栈顶指针T初始指向栈底。当执行一次PUSH操作后,栈顶指针T的变化是?
答案解析
核心考点说明:本题考察栈的基本操作及其对栈顶指针的影响。
解题思路分析:在向下生成的栈中,栈底位于数组的高索引位置,栈顶指针T初始指向栈底。执行PUSH操作时,新元素被添加到栈顶,栈顶指针T需要减少1以指向新的栈顶位置。
每个选项的详细分析:
A. 增加1:错误,因为在向下生成的栈中,PUSH操作会使栈顶指针减少。
B. 减少1:正确,符合向下生成栈的PUSH操作特性。
C. 不变:错误,PUSH操作必然导致栈顶指针变化。
D. 增加2:错误,栈顶指针的变化幅度不符合PUSH操作的实际情况。
易错点提醒:注意栈的生成方向(向上或向下)对栈顶指针变化的影响。
正确答案:B