顺序栈的特点和操作

本文介绍了顺序栈的基本概念,包括其后进先出的特点和两种主要操作:入栈和出栈。详细阐述了入栈时的判断与实现,以及出栈时的注意事项,同时补充了栈的初始化、判断栈空、求栈长、清空栈和销毁栈等算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.顺序栈的定义

1.栈 (Stack) :是一种特殊的、限定仅在一端进行插入和删除操作的线性表。
2.特点 :后进先出(LIFO)
3.入栈 :插入元素到栈顶的操作
4.出栈 :从栈顶删除最后一个元素的操作

1.1顺序栈的表示与实现

top、base 指针指向数组的下标,用 int 类型定义
top 始终指向栈顶元素的后一位
空栈: base==top;
栈满: top-base==stacksize;
上溢: 栈已满,又要压入元素(错误,使元素无法进入);
下溢: 栈已空,还要弹出元素(一般作为结束条件);

1.2顺序栈的表示

#define MAXSIZE 100;
typedef struct{
   
     SElemType *base;//栈底指针
     SElemType *top;//栈顶指针
     int stacksize;//栈可用的最大容量
}SqStack
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值