作业帮 > 综合 > 作业

判断一个序列是否为栈的出栈序列

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/29 08:44:02
判断一个序列是否为栈的出栈序列
#include
#define ArSize 10
#define STACK_INCREMENT 20
using namespace std;
struct _Stack//栈{int *top;int *base;int stacksize;
};void InitStack(_Stack &stack){
stack.base=(int *)malloc(STACK_INCREMENT*sizeof(int));//初始化栈顶和栈底
stack.top=stack.base;
stack.stacksize=ArSize;
}void Push(_Stack &stack,int data){if(stack.top-stack.base==stack.stacksize)//当栈满里,增加分配空间{stack.base=(int*)realloc(stack.base,(stack.stacksize+STACK_INCREMENT)*sizeof(int));
stack.top=stack.base+stack.stacksize;
stack.stacksize+=STACK_INCREMENT;}*(stack.top)=data;//元素入栈
stack.top++;
}void Pop(_Stack &stack)//出栈{int data;if(stack.top==stack.base)
cout