《数据结构》实验要求与规范 (2)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构》实验要求与规范

【基本要求】

1.正确实现所要求的功能,按时提交实验报告。

2.实验报告内容应依次包括:⑴实验目的;⑵实验内容与要求;⑶数据结构设计;⑷算法设计;⑸测试结果;⑹心得体会。

3.程序用C语言或C++语言实现。

4.在包含主函数的程序文件起始处添加包含如下内容的注释:所引用代码和资料的出处、设计本程序时谁在哪些地方帮助过你。

5.在程序文件起始处添加包含如下内容的注释:文件名称、创建者姓名班级学号、创建时间、最后修改时间、文件中所定义的函数的名称和主要功能、文件中所定义的全局变量的变量名和主要功能、文件中用到的他处定义的全局变量及其出处、与其他文件的依赖关系。6.对每个函数添加包含如下内容的注释:函数名称、函数主要功能、函数调用之前的预备条件、函数的输入参数、函数的输出参数、函数的返回值、该函数与其它函数的调用和被调用关系。

实验二顺序表的实现和应用

实验目的:

⑴熟悉线性表的定义和基本操作;

⑵掌握线性表的顺序存储结构设计与基本操作的实现。

实验内容与要求:

⑴定义线性表的顺序存储表示;

⑵基于所设计的存储结构实现线性表的基本操作;

⑶编写一个主程序对所实现的线性表进行测试;

⑷线性表的应用:①设线性表L1和L2分别代表集合A和B,试设计算法求A和B的并集C,并用线性表L3代表集合C;②(选做)设线性表L1和L2中的数据元素为整数,且均已按值非递减有序排列,试设计算法对L1和L2进行合并,用线性表L3保存合并结果,要求L3中的数据元素也按值非递减有序排列。

实验三、四链表的实现和应用

实验目的:

掌握线性表的链式存储结构设计与基本操作的实现。

实验内容与要求:

⑴定义线性表的链式存储表示;

⑵基于所设计的存储结构实现线性表的基本操作;

⑶编写一个主程序对所实现的线性表进行测试;

⑷线性表的应用:①设线性表L1和L2分别代表集合A和B,试设计算法求A和B的并集C,并用线性表L3代表集合C;②设线性表L1和L2中的数据元素为整数,且均已按值非递减有序排列,试设计算法对L1和L2进行合并,用线性表L3保存合并结果,要求L3中的数据元素也按值非递减有序排列。

⑸设计一个一元多项式计算器,要求能够:①输入并建立多项式;②输出多项式;③执行两个多项式相加;④执行两个多项式相减;⑤(选做)执行两个多项式相乘。

实验五后缀表达式的计算

实验目的:

熟练掌握栈和队列的存储结构设计及基本操作的实现;学会分析实际问题中具有栈特点的数据结构;了解表达式的前缀、中缀、后缀等计算机内表示形式。

实验内容与要求:

按常规形式输入算术表达式(例如:输入2*(6-4)+8/4),要求能够:

⑴生成表达式的后缀表示,并输出;

⑵基于表达式的后缀表示,对该表达式求值;

⑶编写一个主程序对表达式求值函数进行测试。

实验六数组的运算

实验目的:

掌握稀疏矩阵的压缩存储方法及主要运算的实现。

实验内容与要求:

设计一个稀疏矩阵计算器,要求能够:⑴输入并建立稀疏矩阵;⑵输出稀疏矩阵;⑶执行两个矩阵相加;⑷执行两个矩阵相乘;⑸求一个矩阵的转置矩阵;⑹(选做)求一个矩阵的逆矩阵。

实验七二叉树的创建与遍历

实验目的:

通过上机实验进一步掌握栈、队列、二叉树的存储结构及基本操作的实现方法。

实验内容与要求:

基于二叉链表存储结构实现二叉树的基本运算,要求:

⑴能建立非空二叉树;

⑵实现二叉树的先、中、后序递归遍历算法;

⑶实现二叉树的非递归的先(或中、或后)序遍历算法及层序遍历算法;

⑷记录运行结果并对递归算法和非递归算法的效率加以分析。

实验八、九二叉树的应用

实验目的:

掌握赫夫曼二叉树的建立及赫夫曼编码的生成。

实验内容与要求:

根据给定的n个权值生成赫夫曼二叉树,输出赫夫曼编码。

实验十图的创建与遍历

实验目的:

通过上机实验进一步掌握图的存储结构及基本操作的实现。

实验内容与要求:

分别基于邻接矩阵和邻接表存储结构实现图的基本运算,要求:

⑴能根据输入的顶点、边/弧的信息建立图;

⑵实现图中顶点、边/弧的插入、删除;

⑶实现对该图的深度优先遍历;

⑷实现对该图的广度优先遍历。

实验十一、十二图的应用

实验目的:

掌握图的基本应用的实现。

实验内容与要求:

在下列图的应用中选做两项:

⑴求无向连通网的最小生成树;

⑵对有向图进行拓扑排序;

⑶求AOE网的关键路径;

⑷求单源点出发的最短路径。

实验十三、十四查找方法比较

实验目的:

通过上机实验对各种静态、动态查找方法进行比较。

实验内容与要求:

⑴实现三种以上静态或动态查找方法,查找表中的数据随机生成;

⑵生成随机数,并执行查找,记录运行结果并加以分析。

实验十五、十六内部排序比较

实验目的:

通过上机实验对各种内部排序方法进行比较。

实验内容与要求:

⑴实现三种以上内部排序方法;

⑵生成随机数以构造待排表;

⑶记录运行结果并加以分析。

相关文档
最新文档