一、定义:
#define MaxSize 50
typedef int ElemType;
typedef struct {
ElemType data[MaxSize];
int top;
} SqStack;
1. 由于是顺序栈的实现,故定义一个连续存放的数组来存放元素;
2. 再定义一个int类型的变量存放栈顶元素的数组元素表示。(此小结初始化栈顶top=-1,即 top直接指代栈顶元素的下标)。
二、基本操作
void InitStack(SqStack& S);//1.初始化栈
bool StackEmpty(SqStack S);//2.判断栈是否为空
bool Push(SqStack& S, ElemType e);//3.进栈
bool Pop(SqStack& S, ElemType& e);//4.出栈
bool GetTop(SqStack& S, ElemType& e);/5./获取栈顶元素
void print(SqStack S);//6.打印输出栈
void DestroyStack(SqStack& S);//7.销毁栈
1. void InitStack(SqStack& S)
输入:将顺序栈输入,由于需要修改顺序栈,故加“&”
过程:top = -1 (注意此处的赋值不唯一)
返回值:无需返回任何值
2. bool StackEmpty(SqStack S)
输入:输入顺序栈,