数据结构实验指导书(修订版)详解.docVIP

  1. 1、本文档共16页,可阅读全部内容。
  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文档。上传文档
查看更多
《数据结构指导书 目录 前言 2 实验01 顺序表的基本操作 4 实验02 单链表的基本操作 5 实验03 栈的基本操作 7 实验04 队列的基本操作 8 实验05 二叉树的基本操作 9 实验06 哈夫曼编码 10 实验07 图的两种存储和遍历 11 实验08 最小生成树、拓扑排序和最短路径 12 实验09 二叉排序树的基本操作 13 实验10 哈希表的生成 14 实验11 常用的内部排序算法 15 前言 《数据结构》是计算机相关专业的一门核心基础课程,也是很多高校考研专业课之一。它主要介绍线性结构、树型结构、图状结构三种逻辑结构元素的存储实现,在此基础上介绍一些典型算法时、空效率分析。这门课程的主要任务是培养学生的算法设计能力及良好的程序设计习惯。通过学习,要求学生能够掌握典型算法的设计思想及程序实现,能够根据实际问题选取合适的存储方案设计出简洁、高效、实用的算法,为后续课程的学习及软件开发打下良好的基础。学习这门课程,习题和实验是两个关键环节。学生理解算法,上机实验是最佳的途径之一。因此,实验环节的好坏是学生能否学好《数据结构》的关键。为了更好地配合学生实验,特编写实验指导书。 一、实验目的 更好的理解算法的思想、培养编程能力。 二、实验要求 每次实验前学生必须根据实验内容认真准备实验程序及调试时所需的输入数据。 2、在指导教师的帮助下能够完成实验内容,得出正确的实验结果。 3、实验结束后总结实验内容、书写实验报告。 4、遵守实验室规章制度、不缺席、按时上、下机。 5、实验学时内必须做数据结构的有关内容,不允许上网聊天或玩游戏,如发现上述现象,取消本次上机资格,平时成绩扣10分。 6、实验报告有一次不合格,扣5分,两次以上不合格者,平时成绩以零分记。 三、实验环境 VC++6.0 四、说明 1、本实验的所有算法中元素类型可以根据实际需要选择。 2、实验题目中带*者为较高要求,学生可自选;其余部分为基本内容,应尽量完成(至少完成70%,否则实验不合格)。 3、数据结构是很多高校的硕士研究生入学考试的专业课之一,希望有志于考研的学生能够在学习过程中注意各种算法的理解,以便为考研做一定的准备。 五、实验报告的书写要求 1、明确实验的目的及要求; 2、记录实验的输入数据和输出结果; 3、说明实验中出现的问题和解决过程; 4、写出实验的体会和实验过程中没能解决的问题 六、成绩考评办法 期末考试占70分,闭卷。 平时考评占30分。其中实验环节占20分(实验准备、上机、报告、等);平时占10分(出勤作业测验等) 七、参考书目 《数据结构》(C语言版) 严蔚敏等 清华大学出版社 《数据结构题集》 (C语言版) 严蔚敏等 清华大学出版社 实验1 顺序表的基本操作 实验学时:2学时 背景知识:顺序表的插入、删除及应用。 目的要求: 1.掌握顺序存储结构的特点。 2.掌握顺序存储结构的常见算法。 实验内容:实现把该表中所有奇数排在偶数之前,即表的前面为奇数,后面为偶数。输入整型元素序列利用有序表插入算法建立一个有序表。利用算法6建立两个非递减有序表并把它们合并成一个非递减有序表。 实验说明: 1.算法1至算法7可以以头文件的方式存储实现该头文件的包含即可2.存储定义 #define MAXSIZE 100 //表中元素的最大个数 typedef int ElemType; //元素类型 typedef struct { ElemType elem; //线性表 int length; //表的实际长度 }SqList; //顺序表的类型名 3.建立顺序表时可利用随机函数自动产生数据。 注意问题: 插入、删除时元素的移动原因、方向及先后顺序。 解函数形参与实参的传递关系。 实验2 单链表的操作 实验学时:学时 背景知识:单链表的插入、删除及应用。 目的要求: 1.掌握单链表的存储特点及其实现。 2.掌握单链表的插入、删除算法及其应用算法的程序实现。 实验内容:随机产生或键盘输入一组元素,建立一个带头结点的单向链表(无序)。 遍历单链表。 把单链表中元素逆置(不允许申请新的结点空间)。 在单链表中删除所有偶数元素结点。 编写在非递减有序链表中插入一个元素使链表元素仍有序的函数,并利用该函数建立一个非递减有序单链表。 利用算法5建立两个非递减有序单链表,然后合并成一个非递增链表。 利用算法5建立两个非递减有序单链表,然后合并

文档评论(0)

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

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

1亿VIP精品文档

相关文档