关于数据结构中的栈的基本算法

#include "stdio.h"
#include "stdlib.h"
#define Maxsize 100
#define DataType int
typedef struct {
DataType data[Maxsize];
int top;
}SeqStack;
SeqStack *s;//定义一个指向顺序栈的指针变量
//站的初始化算法
SeqStack *Init_SeqStack(){
SeqStack *s;
s = new SeqStack;
if(!s){
return NULL;
}else{
return s;
}
}
//栈空判别算法
int Empty_SeqStack(SeqStack *s){
if(s->top==-1){
return 1;//站定指针指向占地,空战


}else{
return 0;
}


}
//入展算法
int Push_SeqStack(SeqStack *s,DataType x){
if(s->top==Maxsize-1){
return 0;//占满不能入展,返回错误代码0;
}else{
s->top++;
s->data[s->top]=x;
return 1;//入展成功,返回成功代码1;
}




}
//出站算法


int Pop_SeqStack(SeqStack *s,DataType *x){
if(Empty_SeqStack(s)){
return 0;
}else{
*x=s->data[s->top];//保存站定元素
s->top--;//站定指针乡下移动
return 1;
}
}
//去站定元素算法
DataType Top_SeqStack(SeqStack *s ){
if(Empty_SeqStack(s)){
return 0;//返回错误的代码0;
}else{
return s->data[s->top];//返回站定元素
}
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值