栈的存储与操作.docxVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
栈的存储与操作

成 绩评阅人重庆邮电大学课程设计实验报告班级:1301416姓名:陈昊学号:2014214156指导老师:夏晨洋课程名称:数据结构实验时间:2015年11月2日实验地点:数字图书馆负一楼B132实验三 栈的存储与操作一、实验目的1.理解栈是限定只能在栈顶进行操作的线性表;2.理解栈的存储结构特点,掌握栈的存储分配要点;3.掌握栈的基本操作及实现,深刻领会栈操作的后进先出特征,并能正确分析其时间复杂度,知道栈性能优于普通线性表及栈的常用情况。二、主要数据结构描述在顺序栈当中,有构造和析构函数,入栈操作,出栈操作,取栈顶元素操作,判断栈是否为空操作。三、算法的基本思想描述在入栈操作中,首先判断栈满,如果栈满报告上溢,如果未满,那么顺序栈的下一个元素等于即将入栈的元素,指针top+1;在出栈操作中,首先判断栈是否为空,如果为空则报告下溢,否则删除栈顶元素,top-1,返回被删除元素的值;在取栈顶元素的操作中,如果栈不为空,就返回栈顶元素的值;在判空操作中,如果为空则返回1;不为空返回0。四、算法时间复杂度分析顺序栈在应用中涉及生长方向和栈定是否存储有效值共有4种情况,常见台式机的系统栈是向下生长、栈顶存储有效值。本次实验实现向上生长、栈顶存储有效值的顺序栈。1. 初始化顺序栈:栈底端的外边界,栈底为低端0,栈顶即为-1;2. 数据元素入栈:栈不满,先增加栈顶,再存储数据元素,时间复杂度为O(1);3. 数据元素出栈:栈不空,先读数据元素,再减栈顶指针,时间复杂度为O(1);4. 读栈顶元素:栈不空,读数据元素,不动栈顶指针,时间复杂度为O(1);5. 判定栈空/满操作:栈顶为-1/数组长度减1。五、运行的结果截图在测试中,我选取了一个长度为10的整型数组作为数据。首先将a栈入栈,然后显示a栈各个元素的值。接下来先将3个元素出栈,再取栈顶元素。最后将所有元素弹栈,执行判空操作。六、实验体会和收获在本次试验中,我了解了栈后进先出的特点,并且了解了栈的数据结构,掌握了栈的编写。利用新学的知识,可以解决许多平时编程中遇到的问题。七、程序清单

文档评论(0)

wuailuo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档