题目
【填空题】若栈采用顺序存储方式存储,现两栈共享空间S[1~N],top[i]代表第i个栈( i =1,2)栈顶。栈1的底在v[1],栈2的底在V[N],则栈满的条件是 。(请填top[1]+top[2]==N 或者 top[1]+1==top[2] 或者top[1]==top[2] )
【填空题】若栈采用顺序存储方式存储,现两栈共享空间S[1~N],top[i]代表第i个栈( i =1,2)栈顶。栈1的底在v[1],栈2的底在V[N],则栈满的条件是 。(请填top[1]+top[2]==N 或者 top[1]+1==top[2] 或者top[1]==top[2] )
题目解答
答案
top[1]+1==top[2]
解析
栈1的底在V[1],栈2的底在V[N],这意味着栈1从数组的开始位置增长,而栈2从数组的末尾位置增长。当两个栈相遇时,即栈1的栈顶位置加1等于栈2的栈顶位置时,说明两个栈已经没有空间可以继续增长,此时栈满。因此,栈满的条件是top[1]+1==top[2]。