在一个用数组实现的栈中,如果栈顶指针top指向栈顶元素的下一个位置,并且栈的容量为N,则栈满的条件是?
答案解析
核心考点:栈的顺序存储及栈满的条件。
解题思路:栈顶指针top指向栈顶元素的下一个位置,当栈满时,top的值应该等于数组的容量N。
选项分析:
A. top == 0:错误,top为0表示栈为空。
B. top == N - 1:错误,如果top指向栈顶元素,栈满是top==N-1,但本题top指向栈顶的下一个位置,则栈满时top应该为N。
C. top == N:正确,当top等于数组的容量N时,表示栈已满,无法再添加元素。
D. top == N + 1:错误,数组的有效索引范围是0到N-1,top不可能超过N。
易错点:注意栈顶指针的具体含义(指向栈顶或指向栈顶的下一个位置)及数组索引范围。
正确答案:C