数据结构上机实验指导书.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 PAGE \* Arabic 8 页 数据结构上机实验指导书 实验指导 上机实践是学生对本门课程所学知识的一种全面、综合的能力训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节,也是对课堂教学与实践教学效果的一种检验。其任务是训练学生实现基本的数据结构,培养学生设计复杂程序的能力,并熟悉实验报告规范。通过实验学习,使学生能够学会分析计算机加工的数据对象的特性,以便选择合理的数据结构和存储方式,设计出相应问题的求解算法,提高分析问题和解决问题的能力。 结合课程学习,安排了3个实习单元,各单元的训练重点在于基本的数据结构,而不强调面面俱到。各实习单元与教科书的各章具有紧密的对应关系,在个别实习单元中安排有难度差别不等的多个实习题选做。此外,每个实习题采取了统一的格式,实验目的、实验内容、实验性质、实验要求、程序实现、程序运行情况、撰写、提交实验报告等7个部分组成。 ? 实验一、线性表操作 一、实验目的 1.掌握用程序设计语言调试程序的基本方法。 2.掌握线性表的基本运算,如插入、删除等。 二、实验内容 1.顺序表、线性链表的插入、删除、合并等操作; 2.利用单向链表作为存储结构,实现一元稀疏多项式的加、减运算。 三、实验性质 ??? 设计性实验。 四、实验要求 1.C++/C完成算法设计和程序设计并上机调试通过。 2.撰写实验报告,提供实验结果和数据。 3.分析算法,要求给出具体的算法分析结果,并简要给出算法设计小结和心得。 五、程序实现 写出每个操作的算法(操作过程)。 六、程序运行情况 写出输入数据及运行结果。 七、撰写、提交实验报告及源程序清单。 实验二、栈和队列及其应用 一、实验目的 1、掌握栈的特点(先进后出FILO)及基本操作,如入栈、出栈等,栈的顺序存储结构和链式存储结构,以便在实际问题背景下灵活应用。 2、掌握队列的特点(先进先出FIFO)及基本操作,如入队、出队等,队列顺序存储结构、链式存储结构和循环队列的实现,以便在实际问题背景下灵活应用。 二、实验内容 1.利用栈,演示数制转换问题。 2.利用栈,演示用算符优先法对算术表达式求值的过程。 选作内容: 地图着色问题。 迷宫求解问题。 三、实验性质 ??? 设计型实验。 四、实验要求 1.用C++/C完成算法设计和程序设计并上机调试通过。 2.撰写实验报告,提供实验结果和数据。 3.分析算法,要求给出具体的算法分析结果,并简要给出算法设计小结和心得。 五、程序实现 写出每个操作的算法(操作过程), 程序运行情况。 六、写出输入数据及运行结果 七、撰写、提交实验报告及源程序清单。 实验三、串和数组 一、实验目的 1.掌握稀疏矩阵的特点(三元组存储方法)。 2.掌握串的运算(赋值,比较,联结,插入子串,模式匹配……等)。 二、实验内容 1.用堆分配存储表示串,实现串的复制、比较、连接、求子串、串定位和串替换等基本操作。 2.用三元组顺序表表示稀疏矩阵,实现两个稀疏矩阵的相加、相减和相乘运算。 选作内容: 简单的行编辑程序。 三、实验性质 ??? 设计型实验。 四、实验要求 1.用C++/C完成算法设计和程序设计并上机调试通过。 2.撰写实验报告,提供实验结果和数据。 3.分析算法,要求给出具体的算法分析结果,并简要给出算法设计小结和心得。 五、程序实现 写出每个操作的算法(操作过程) 程序运行情况 六、写出输入数据及运行结果(可参见教材)。 七、撰写、提交实验报告及源程序清单。  实验四、二叉树 一、实验目的 1.进一步掌握树的结构及非线性特点,递归特点和动态性。 2.进一步巩固对指针的使用和二叉树的三种遍历方法、建立方法及用广义表进行输入输出。 二、实验内容 1.写一个简单的哈夫曼编码和译码系统。 选作内容: 1. 实现二叉树的遍历,实现先序、中序和后序递归遍历算法。 2. 实现二叉树中序遍历的非递归算法和层序遍历算法。 三、实验性质 ??? 设计型实验。 四、实验要求 1.用C++/C完成算法设计和程序设计并上机调试通过。 2.撰写实验报告,提供实验结果和数据。 3.分析算法,要求给出具体的算法分析结果,并简要给出算法设计小结和心得。 五、程序实现 写出每个操作的算法(操作过程), 程序运行情况。 六、写出输入数据及运行结果(可参见教材) 七、撰写、提交实验报告及源程序清单。 ? 实验五、图 一、实验目的 1.进一步掌握图的结构及非线性特点,递归特点和动态性。 2.进一步巩固图的三种存储结构和二种遍历方法、最小生成树的两种求解算法。 二、实验内容 1.以邻接链表为存储结构,实现图的深度优先和广度优先遍历算法。 2.? 设计合适的存储结构,用克鲁斯卡尔算法求网的最小生成树。 选作内容 1. 用邻接矩阵作为存储结构,实现图的深度优先和广度优先

文档评论(0)

ccccccxx + 关注
官方认证
内容提供者

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

认证主体临沂冉通信息技术有限公司
IP属地山东
统一社会信用代码/组织机构代码
91371300MA9576790T

1亿VIP精品文档

相关文档