C语言:堆栈(Stack)
堆栈:具有一定操作约束的线性表,只在一端(栈顶,Top)做插入删除操作。
1:基本特点(先进后出)
2:
插入数据:Push
删除数据:Pop
3:操作集
1、 Stack CreatStack(int Maxsize); //生成空堆栈,其最大长度为Maxsize
2、 int IsFull(Stack S,int Maxsize); //判断堆栈S是否已满
3、void Push(Stack S,ElementType item); //将元素item压入堆栈
4、int IsEmpty(Stack S); //判断堆栈是否为空
5、ElementType item(Stack S); //删除并返回栈顶元素
4:堆栈的顺序存储实现
#define Maxsize <堆栈所存储元素的最大个数>
typedef struct SNode* Stack;
typedef struct SNode{
ElementType Data[Maxsize];
int Top;
};
(1)、入栈:
void Push(Stack PtrS,ElementType item){