链栈实验.docVIP

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

实验四 链栈 一、实验目的 掌握用VC工具上机调试链栈的基本方法; 掌握链栈的基本操作,链栈初始化、链栈入栈、链栈出栈、判断链栈是否为空、求队列长度以及链栈销毁操作; 掌握栈在链式映像下的操作实现。 二、实验学时 2学时 三、实验类型 验证型 四、实验内容 链栈的初始化、链栈入栈、链栈出栈、判断链栈是否为空、求链栈长度、链栈输出及链栈销毁操作的实现; 通过设计统一界面来调用链栈的基本操作的实现。 五、实验原理 链栈概述 链栈是栈这一受限的线性表的链式映像实现。为方便操作,链栈采用带头结点的单链表存储结构,若链栈为空则栈头结点指针域为空;若链栈非空则栈头结点指向链栈的第一个元素,操作是可将其赋值给工作指针进行相应的各种操作即可。 2、链栈基本算法 (1)LinkStackInitiate(S); 初始化链栈S。 (2)LinkStackEmpty(S); 判断链栈S非空否操作 。 (3)EnLinkStack (S,x); 链栈S入栈操作,在链栈S的栈顶插入数据元素x。 (4)DeLinkStack (S,d); 链栈S出栈操作,把链栈S的栈顶元素删除并由参数d带回。 (5)LenLinkStack (S); 求链栈S长度。 (6)DisLinkStack (S); 输出链栈S。 (7)DestroyLinkStack(S);销毁链栈S。 3、模块层次 要求画出链栈的模块层次图。如图所示 图7 链栈的模块层次图 4、关键算法NS图 六、实验步骤及要求 用VC语言编程实现建立一个链栈,并在此链栈中入栈若干个元素和出栈若干个元素 链栈初始化; 通过键盘读取元素建立链栈S; 判断此循环队列是否为空; 输出此链栈; 求此时链栈S长度; 链栈S若干个元素入栈; 求此时链栈S长度; 输出此链栈S; 链栈S出栈若干个元素; 判断此链栈S是否为空; 求此时链栈S长度; 输出此链栈S; 销毁此链栈S; 程序完成。 七、界面要求 1、界面统一。如下图所示: 图8 链栈统一界面图 2:界面可以不统一,按自己设计的形式。 八、思考问题 结合实验过程,回答下列问题: 何时采用循环队列处理问题为最佳选择。 九、实验报告要求 根据对队列这一受限的线性表的理解,如何实现循环队列; 实现循环队列的入队和出队操作的程序设计思路; 何时选用循环队列去解决实际问题; 采用循环队列解决问题的特点; 调试程序过程中遇到的问题及解决方案; 本次实验的结论与体会。

文档评论(0)

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

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

1亿VIP精品文档

相关文档