存储结构为顺序存储的栈为顺序栈。栈的示意图如下:
建立栈的主要步骤:(1)建立一个空栈(2)将元素压入栈(3)元素出栈
#include "stdafx.h"
#include<iostream>
using namespace std;
#define MaxSize 100 //定义栈的大小
typedef int type;
typedef struct stack
{
type data[MaxSize];//栈中元素数组
int top; //栈顶元素位置
}SeqStack,*SStack;
//置栈空(初始化顺序堆栈)
void InitSeqStack(SStack s)
{
s->top=-1;
}
//判断堆栈是否为空
bool EmptyStack(SStack s)
{
if(-1==s->top)
return true;
else
return false;
}
//判断栈满
bool FullStack(SStack s)
{
return s->top==MaxSize-1;
}
//进栈
void PushStack(SStack s, type data)
{
if(FullStack(s))
{
cout<<"上溢"<<endl;
return ;
}
else
{
s->d