读书频道 > 网站 > 网页设计 > 二级c语言程序设计
1.1.3 栈和队列
14-02-08    奋斗的小年轻
收藏    我要投稿   

本文所属图书 > 二级c语言程序设计

本书由希赛教育等考学院组织编写,作为全国计算机等级考试二级的辅导和培训指定教程。书中内容紧扣全国计算机等级考试2014年考试大纲,通过对历年试题进行科学分析、研究、总结、提炼而成。书中内容全面实用,涵立即去当当网订购

栈和队列都是特殊的线性表,其定义符合线性表的定义,其操作也类似于线性表的操作,只不过增加了一些限定而已。

1.栈的定义与操作

栈(Stack)是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表。通常称插入、删除的这一端为栈顶(Top),另一端为栈底(Bottom),如图1-2所示。当表中没有元素时称为空栈。栈顶元素总是后插入的元素,也是最先被删除的元素;栈底元素总是最先被插入的元素,也是最后才能被删除的元素。

假设栈S=(al,a2,a3,…,an),则a1为栈底元素,an为栈顶元素。栈中元素按a1,a2,a3,…,an的次序进栈,退栈的第一个元素应为栈顶元素,换句话说,栈的修改是按后进先出的原则进行的。因此,栈称为先进后出表(First In Last Out,FILO),或后进先出表(Last In First Out,LIFO)。

栈的操作主要有入栈运算、退栈运算(出栈)和读栈顶元素。

1)入栈运算:入栈运算是指在栈顶位置插入一个新元素。首先将栈顶指针加1(即Top加1),然后将元素插入到栈顶指针指向的位置。当栈顶指针已经指向存储空间的最后一个位置时,说明栈空间已满,不能再进行入栈操作,这种情况称为栈“上溢”错误。

2)退栈运算:退栈是指取出栈顶元素并赋给一个指定的变量。首先将栈顶元素(栈顶指针指向的元素)赋给一个指定的变量,然后将栈顶指针减1(即Top减1)。当栈顶指针为0时,说明栈空,不可进行退栈操作,这种情况称为栈的“下溢”错误。

3)读栈顶元素:读栈顶元素是指将栈顶元素赋给一个指定的变量。这个运算不删除栈顶元素,只是将它赋给一个变量,因此栈顶指针不会改变。当栈顶指针为0时,说明栈空,读不到栈顶元素。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站