第3章 栈和队列
3.1.1 栈的定义及特点
特点:先进后出
3.1.2队列的定义及特点
3.3.2顺序栈的表示和实现
#define Maxsize 100
typedef struct
{
SElemType *top;
SElemType *base;
int stackSize;
}SqStack;
1.初始化
Status InitSatck(SqStack &s)
{
s.base=new SElemType[Maxsize];
if(!s.base) return ERROR;
s.top=s.base;
s.stackSize=Maxsize;
return OK;
}
2.入栈
Status Push(SqStack &s,SElemType e)
{
if(s.top-s.base==Maxsize) return ERROR;
*s.top++=e;
return OK;
}
3.出栈
Status Pop(SqStack &s,SElemType &e)
{
if(s.top==s.base) return ERROR;
e=*--top;
return OK;
}
3.取栈顶元素
SElemType GeTop(SqStack &s)
{
if(s.top!=s.base)
{
p=s.top;
return *--p;
}
}
<