多语言展示
当前在线:555今日阅读:86今日分享:14

c++顺序栈的实例

顺序栈在数据结构中是比较基础的,但也是比较重要的一个知识点。很多同学希望有一个简单的实例来了解顺序栈,但是书本上的代码都是伪代码,我们不怎么能理解。下面就满足同学们这个小小的愿望吧
工具/原料

任意一个C语言编程软件(这里使用VC6.0)

方法/步骤
1

第一步,构建顺序栈的储存结构:#includeusing namespace std;#define MAXSIZE 100typedef struct //顺序栈的储存结构{ int *base; int *top; int stacksize;}SqStack;

2

第二步,顺序栈的初始化int InitStack(SqStack &S)//顺序栈的初始化{ S.base=new int [MAXSIZE]; if(!S.base)exit(0); S.top=S.base; S.stacksize=MAXSIZE; return 1;}

3

第三步,入栈int Push(SqStack &S,int e)//入栈{ if(S.top-S.base==S.stacksize)return 0; *S.top=e; S.top++; return 1;}

4

第四步,取栈顶元素int GetTop(SqStack &S)//取栈顶元素;{ if(S.top!=S.base) return *(S.top-1);}

5

第五步,出栈int Pop(SqStack &S,int &e)//出栈{ if(S.top==S.base)return 0; e=*--S.top;//等价于S.top--;e=S.top; return 1;}

6

第六步,主函数int main(){ SqStack S; InitStack(S); int e; cin>>e; Push(S,e); int d; d=GetTop(S); cout<

推荐信息