c++顺序栈的实例

2025-10-01 05:58:08

1、第一步,构建顺序栈的储存结构:

#include<iostream>

using namespace std;

#define MAXSIZE 100

typedef struct //顺序栈的储存结构

{

int *base;

int *top;

int stacksize;

}SqStack;

c++顺序栈的实例

2、第二步,顺序栈的初始化

int InitStack(SqStack &S)//顺序栈的初始化

{

S.base=new int [MAXSIZE];

if(!S.base)exit(0);

S.top=S.base;

S.stacksize=MAXSIZE;

return 1;

}

c++顺序栈的实例

3、第三步,入栈

int Push(SqStack &S,int e)//入栈

{

if(S.top-S.base==S.stacksize)return 0;

*S.top=e;

S.top++;

return 1;

}

c++顺序栈的实例

4、第四步,取栈顶元素

int GetTop(SqStack &S)//取栈顶元素;

{

if(S.top!=S.base)

return *(S.top-1);

}

c++顺序栈的实例

5、第五步,出栈

int Pop(SqStack &S,int &e)//出栈

{

if(S.top==S.base)return 0;

e=*--S.top;//等价于S.top--;e=S.top;

return 1;

}

c++顺序栈的实例

6、第六步,主函数

int main()

{

SqStack S;

InitStack(S);

int e;

cin>>e;

Push(S,e);

int d;

d=GetTop(S);

cout<<d<<endl;

Pop(S,e);

cout<<e<<endl;

return 0;

}

c++顺序栈的实例

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢