栈和队列(栈篇下:顺序栈)

一、顺序栈的定义

        上篇我们讲到栈是一种先进后出的线性结构,并且讲了链式栈的构造。这篇我们讲顺序栈的构造。

        顺序栈:使用一片连续的数组空间来进行存储,在这里,我们定义栈为空的时候栈顶指针top=-1,栈底指针bottom = -1;那么假设数组a[max],则判断栈为满条件为top = max- 1;栈空条件为top = -1。

二、顺序栈的节点类型构造

定义一个结构体为顺序栈的节点类型,MAX = 100  ----栈的最大容量

栈顶指针 top        栈底指针 bottom 

三、顺序栈的相关操作

1.创建一个空栈

2.判断栈是否为空,为空返回1,非空返回0

3.判断栈是否为满,为满返回1,未满返回0

4.入栈,从栈顶插入一个新元素

5.出栈,从栈顶删除一个元素,并将该元素的数据通过形参指针返回给主调函数

6.获取栈顶元素,只获取元素的数据,不删除元素

7.清空栈

8.销毁栈

四、测试

        先创建一个顺序栈,从键盘输入依次进栈,输入0表示结束(人为约定)

        再依次出栈。

结果:

可以看到满足栈先进后出,后进先出的特性。

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值