解答:你要压栈,必须先把栈顶标志加一之后才能写入,你要弹栈需要先读出再把栈顶标志减一。
那么,栈为空的时候标志肯定不能是0,因为它标志着栈顶元素是数组的第一个值,这样代表栈里是有一个元素的。
所以,top是-1的时候它才是空栈,写入的时候要先加一,指向数组第一个空间了才能写 。
解答:你要压栈,必须先把栈顶标志加一之后才能写入,你要弹栈需要先读出再把栈顶标志减一。
那么,栈为空的时候标志肯定不能是0,因为它标志着栈顶元素是数组的第一个值,这样代表栈里是有一个元素的。
所以,top是-1的时候它才是空栈,写入的时候要先加一,指向数组第一个空间了才能写 。