手写栈

必要的定义变量

1 int stack[maxn];//开辟栈所需要的数组空间,其中maxn是栈的最大支持的大小
2 int p = 0;//栈顶指针,指向下一个待插入的数组位置

 

1.压栈

 1 //将x压入栈
 2 void push(int x)
 3 {
 4     if(x>=maxn)//判断栈是否溢出
 5         cout << "Stack overflow." ;
 6     else
 7     {
 8         stack[p]=x;
 9         p+=1;
10     }
11 }

2.弹出栈顶元素

1 void pop()//弹出栈顶元素
2 {
3     if(p==0)//需判断是否栈为空
4         cout << "Stack is empty" ;
5     else
6         p-=1;
7 }

3.查询栈顶元素

1 int top()//查询栈顶元素
2 {
3     if(p==0)//需判断是否栈为空
4         cout << "Stack is empty" ;
5     else
6         return stack[p-1];//此处p-1为栈顶
7 }

 

posted @ 2020-12-15 22:12  屑魔女伊蕾娜  阅读(68)  评论(0)    收藏  举报