网站大量收购独家精品文档,联系QQ:2885784924

[工学]《数据结构》实验指导书 2012最新版.doc

[工学]《数据结构》实验指导书 2012最新版.doc

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]《数据结构》实验指导书 2012最新版

目 录 实验一 线性表基本操作的编程实现 1 实验二 堆栈或队列基本操作的编程实现 9 实验三 串基本操作的编程实现 15 实验四 二维数组基本操作的编程实现 18 实验五 二叉树基本操作的编程实现 21 实验六 图基本操作的编程实现 29 实验七 查找技术的编程实现 39 实验八 排序技术的编程实现 45 附录一 实验常见问题问答 52 附录二 如何准备实验 52 附录三 如何写实验报告 53 附录四 实验报告书写标准 53 (特别提示:程序设计包含两个方面的错误。其一是语法错误,其二是功能错误。为了提高学生的编程和调试能力,本指导书给出的程序代码并不保证没有上述的两种错误。并且也不保证程序的完整性,有一些语句已经故意删除,就是要求学生自己编制完成,这样才能达到我们的教学要求。希望大家以自己所学高级语言的基本功和数据结构原理的思考点为基础,不要过于依赖给出的参考代码,这样才能有所进步。如果学生能够根据要求完全自己编制,那就更好了。) 实验一 线性表基本操作的编程实现 【实验目的】 线性表基本操作的编程实现 要求: 线性表基本操作的编程实现(2学时,验证型),掌握线性表的建立、遍历、插入、删除等基本操作的编程实现,也可以进一步编程实现查找、逆序、排序等操作,存储结构要求是链表存储结构(顺序存储结构建议作为课外实验完成),可以依次完成主要功能来体现功能的正确性,用菜单进行管理完成大部分功能,要求可以重复运行。还鼓励学生利用基本操作进行一些更实际的应用型程序设计。 【实验性质】 验证性实验(学时数:2H) 【实验内容】 线性表的链表存储,实现数据插入、删除运算。为了体现功能的正常性,同时要编制数据输入函数和遍历函数,数据输入可以用1.键盘输入 2.内部预置数据 3.计算机自动给出 4.文件读入。最好同时提供多种方式。 其他建议改进的功能或细节:存储结构修改为循环链表、双向链表、双向循环链表、静态链表等。 实验要求带头结点,提高编程能力可以把头结点故意去掉,看看那些语句有变化,编程增加了多少工作量。 【注意事项】 1.开发语言:使用C++,不能使用C。至于是否使用对象,初期可以不用,但是建议尽量尽快使用对象。 2.可以自己增加其他功能。 3.如果是自己开发的,请在程序界面上注明 ***原创。如果是参考他人或改编他人的,则注明:*** 参考他人版。希望大家诚实对待自己的努力。如果有小组,版权页上写上全组人员。 4.在实验报告中也应该如实写出哪些程序功能是自己编的,哪些是参考别人的。写出语句行数、开发的时间数量(小时数)。 5.初始成绩全部学生都是不及格,然后逐步通过提交更好的版本来刷新成绩。实验当日仅仅是不及格变为及格。之后通过班长全班学生提交源代码,为了方便,建议把程序做成一个.cpp。之后在实验后的三天时间内提交实验报告。过时不候。 6.结合实验当时的检测,实验后源代码的检测,实验报告的书写给出当次的成绩。分为五级制。程序提交在实验之后的三天里可以刷新。但是一般不应该超过二次。提交的程序必须要语法正确的。目前由于老师的审查平台是c++ 6.0,所以为了统一起见,不接受其他平台的开发系统。 程序名一律类似为: 23-2-17-翁靖凯-链表实验程序.cpp 所有信息之间为中横线。如果有文本文件,也是类似的结构: 23-2-17-翁靖凯-链表实验程序输入数据.txt 23-2-17-翁靖凯-链表实验程序输出数据.txt 7.班长负责全班的考勤和一般事务管理,协调,务必早些到场,最后离场,地点:等待通知。找看门的师傅开门。请组织几名乐意帮助同学的人,组成学生辅导小组,帮助其他稍差的学生赶上来,尽快度过初期的困难阶段。辅导小组的学生做的好的,将来在平时成绩上将考虑加分。 书写报告需要按照以下几个大的方面来阐述:相关理论与示意图、总体设计、细节设计、界面截图、开发过程综述(花费时间、语句数、调试过程、重大收获),开发总结。重点源码清单,致谢等。 【思考问题】 线性表的顺序存储和链表存储的差异?优缺点分析? 那些操作引发了数据的移动? 算法的时间效率是如何体现的? 链表的指针是如何后移的?如何加强程序的健壮性? 【运行效果范例】 以下是建议,并不是强制的要求,大家可以发挥自己的聪明才智。 链表基本功能菜单 作者:***(部分原创版) ========== 1.输入数据(源程序内部用数组提供5个原始数据) 2.显示数据(遍历链表中全部数据) 3.修改数据(要求提供位置和新值) 4.插入数据(要求提供位置和新值) 5.删除数据(要求提供位置) 6.读取数据(要求提供位置) 7.求表长度(求出元素个数) 8.数据反转(全部数据反向存储) 9.结束程序 ========== 请输入您的选择:1 链表中的全部数据为: Headp- [ 11 |-]

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档