栈的表示和操作的实现(2)
2023-04-29 来源:飞速影视
图1 栈中元素和栈指针之间的关系
由于顺序栈的插入和删除只在栈顶进行,因此顺序栈的基本操作比顺序表要简单得多,以下给出顺序栈部分操作的实现。
1.初始化
顺序栈的初始化操作就是为顺序栈动态分配一个预定义大小的数组空间。
算法3.1 顺序栈的初始化
【算法步骤】
① 为顺序栈动态分配一个最大容量为MAXSIZE的数组空间,使base指向这段空间的基地址,即栈底。
② 栈顶指针top初始为base,表示栈为空。
③ stacksize置为栈的最大容量MAXSIZE。
2.入栈入栈操作是指在栈顶插入一个新的元素。算法3.2 顺序栈的入栈【算法步骤】① 判断栈是否满,若满则返回ERROR。② 将新元素压入栈顶,栈顶指针加1。【算法描述】
2.入栈
入栈操作是指在栈顶插入一个新的元素。
算法3.2 顺序栈的入栈
【算法步骤】
① 判断栈是否满,若满则返回ERROR。
② 将新元素压入栈顶,栈顶指针加1。
【算法描述】
3.出栈
出栈操作是将栈顶元素删除。
算法3.3 顺序栈的出栈
【算法步骤】
① 判断栈是否空,若空则返回ERROR。
② 栈顶指针减1,栈顶元素出栈。
【算法描述】
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)
www.fs94.org-飞速影视 粤ICP备74369512号