题目链接:https://pintia.cn/problem-sets/1101307589335527424/problems/1101313244872126464
题意:一种新的堆栈,用Top表示当前栈顶的上一个地址,这里数据是入栈Top++。则当Top=MaxSize时栈满,当Top=0时栈空,没有二义性。
AC代码如下:
1 bool Push( Stack S, ElementType X ){ 2 if(S->Top==S->MaxSize){ 3 printf("Stack Full\n"); 4 return false; 5 } 6 S->Data[S->Top++]=X; 7 return true; 8 } 9 10 ElementType Pop( Stack S ){ 11 if(!S->Top){ 12 printf("Stack Empty\n"); 13 return ERROR; 14 } 15 return S->Data[--S->Top]; 16 }