欢迎来到天天文库
浏览记录
ID:46296868
大小:87.50 KB
页数:11页
时间:2019-11-22
《[精品]数据结构与算法设计实验指导书(必修)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数据结构与算法设计实验指导书实验1顺序表的操作一、实验目的通过对线性表的一些基本的操作和具体的函数实现,深入理解线性表的逻辑结构特性;了解并掌握线性表的顺序存储结构的描述方法少顺序表的革本操作(建立、插入)的实现算法及各函数间的调用关系;熟练掌握对程序的输入、编辑、调试和运行过程。二、实验内容程序编程类题目:顺序表的操作:实现顺序表的建立、插入等。题目:设线性表中的数据元素是按值非递减有序排列的,试以顺序存储结构,编写一算法,将X插入到线性表的适当位置上,以保持线性表的有序性。解:木题的算法思想是:先找到适当的位置,然后后移元素空出一个位置,
2、再将X插入,并返回向量的新长度三、实验步骤1.问题理解和分析充分地分析和理解问题本身,弄清要求做什么。2.上机前程序静态检杳静态检查主要有两种途径:用--组测试数据手工执行程序;通过阅读或给别人讲解程序而深入全面地理解程序逻辑。3.程序调试和运行川多纽不同的数据进行测试,记录测试数据和运行输出及结果4.完成实验报告按实验报告的要求完成书写工作。实验2单链表的操作一、实验目的通过对单链表的一些基本的操作和具体的函数实现,深入理解线性表的逻辑结构特性;了解并掌握单链表的存储结构的描述方法与单链表的基木操作(建立、插入)的实现算法及各函数间的调用关
3、系。二、实验内容程序编程类题目:单链表的操作:实现单链表的建立;插入等。题冃:设线性表中的数据元素是按值非递减冇序排列的,试以链式存储结构,编写一算法,将X插入到线性表的适当位置上,以保持线性表的有序性。解:本题算法的思想是先建立一个待插入的结点,然后依次与链表中的各结点的数据域比较大小,找到插入该结点的位置,最后插入该结点。三、实验步骤1.问题理解和分析充分地分析和理解问题木身,弄清要求做什么。2.上机前程序静态检查静态检査主耍有两种途径:用一组测试数据手工执行程序;通过阅读或给别人讲解程序而深入全面地理解程序逻辑。3.程序调试和运行用多组
4、不同的数据进行测试,记录测试数据和运行输出及结果1.完成实验报告实验3栈的操作一、实验目的通过对栈的一些基本的操作和具体的函数实现,深入理解栈类型的特点;熟练掌握栈类型的实现方法,特别应注意栈满和栈空的条件以及它们的描述方法。二、实验内容程序编程类题目:栈的操作:实现栈的定义、入栈、出栈等操作。题目:设单链表中存放n个字符,设计一个算法,使用栈判断该字符串是否屮心对称,如abccba即为屮心对称字符串.提示:先用create。函数从用户输入的字符串创建相应的单链表,然后调用bj()函数判断是否为屮心对称字符串。在bj()函数中先将字符串进栈,
5、然后将栈中的字符逐个为单链表中字符进行比较。三、实验步骤1.问题理解和分析充分地分析和理解问题本身,弄清要求做什么。2.上机前程序静态检查静态检查主要有两种途径:用一组测试数据手工执行程序;通过阅读或给别人讲解程序而深入全而地理解程序逻辑。3.程序调试和运行用多组不同的数据进行测试,记录测试数据和运行输出及结果1.完成实验报告实验4队列的操作一、实验目的通过对队列的一些基本的操作和具体的函数实现,深入理解队列类型的特点;熟练掌握队列类型的实现方法,特别应注意队列满和队列空的条件以及它们的描述方法。二、实验内容程序编程类题目:队列的操作:实现队
6、列的定义、入队列、出队列等操作。题目:舞伴问题提示:先入队的男士或女士亦先岀队配成舞伴。可用队列作为算法的数据结构。在算法中,假设男士和女士的记录存放在一个数组中作为输入,然后依次扫描该数组的各元素,并根据性別来决定是进入男队还是女队。当这两个队列构造完成Z后,依次将两队当前的队头元素出队來配成舞伴,直至某队列变空为止。此时,若某队仍有等待配対者,算法输出此队列中等待者的人数及排在队头的等待者的名字,他(或她)将是下一轮舞ilh开始吋第一个可获得舞伴的人三、实验步骤1.问题理解和分析充分地分析和理解问题本身,弄清要求做什么。2.上机前程序静态
7、检查静态检杳主要有两种途径:用一组测试数据手工执行程序;通过阅读或给别人讲解程序而深入全面地理解程序逻辑。3.程序调试和运行用多组不同的数据进行测试,记录测试数据和运行输出及结果4.完成实验报告按实验报告的要求完成书写匸作。实验5二叉树操作一、实验目的通过实现二叉树结点结构和对二叉树的基本操作,掌握对二叉树每种操作的具体实现,学会利用递归和非递归方法编写对二叉树这种递归数据结构进行处理的算法二、实验内容程序编写类题目[问题描述]建立二叉树并实现对二义树的先序、屮序和后序遍历。[基木要求](1)编写函数实现按先序序列建立二叉树(2)分别编写函数
8、实现对二叉树的先序、中序和后序遍历(其屮应有一个非递归调用的函数)(3)对给定的任意先序序列均能建立对应的二叉树[测试数据]见109页图5.12[实现提示]分别编写
此文档下载收益归作者所有