2023年C语言版数据结构实验报告

上传人:豆*** 文档编号:166046856 上传时间:2022-10-31 格式:DOC 页数:9 大小:527.50KB
返回 下载 相关 举报
2023年C语言版数据结构实验报告_第1页
第1页 / 共9页
2023年C语言版数据结构实验报告_第2页
第2页 / 共9页
2023年C语言版数据结构实验报告_第3页
第3页 / 共9页
点击查看更多>>
资源描述
苏州科技学院数据结构(C语言版)实验报告专业班级 测绘0911 学 号 姓 名 朱辉 实习地点 C1-203 指导教师 史守正 实验四 图一、 程序设计的基本思想,原理和算法描述:图是一种较线性表和树更加复杂的一种数据结构,在图形结构中,结点之间的关系可以是任意的,图中任意两个数据元素之间都也许相关,图重要有无向图,有向图等(1)建立无向网的邻接矩阵存储并输出,参考程序清单,实现无向图的邻接矩阵表达。(2)建立图的邻接表存储并在此基础上实现图的深度优先遍历和广度优先遍历备注:无向图已完毕,无向网需要自己建立(参照算法7.2);参照算法7.4, 7.5,7.6完毕图的深度遍历,广度遍历;请添加适当的注释。二、源程序及注释(打包上传):三、运营输出结果:四、调试和运营程序过程中产生的问题及采用的措施:在程序编辑的过程中,有许多地方出现不能顺序运营的,尚有代码出现漏掉犯错,图的遍历是重点但由于知识的残缺不能完整的编译出来,又或者编译的程序不能对的的得到结果,再通过多人合作共同讨论后得到了满意的解决。五、对算法的程序的讨论、分析,改善设想,其它经验教训:通过这次这么复杂的程序实验,我终于发现了调用函数的巨大优越性,以前碰到都是很短的程序,感觉调用有点多余,但复杂的程序时,假如不采用调用的话,会使程序非常的乱,改程序时不知道从哪改,调用函数可以更好使程序简洁话,层次话,更加容易让人看懂这次实验的逻辑性给了我们很大启发通过本次实验让我对图有了更深刻的结识,再通过多次的更改后终于将实验做出来,在实验中也出现了许多问题,有不出结果,有不能运营的,但最终只要努力都会搞定的实验五 查找一、程序设计的基本思想,原理和算法描述:实现二叉排序树上的查找、插入、删除算法。具体实现规定:1. 用二叉链表做存储结构,输入键值序列,运用查找、插入算法建立一棵二叉排序树。2. 按中序遍历这棵二叉排序树。3. 在二叉排序树上插入结点。4. 删除二叉排序树上的结点。二、源程序及注释(打包上传):三、运营输出结果:四、调试和运营程序过程中产生的问题及采用的措施:查找是一种常用到的方法在程序中十分常见,在程序运营中。由于对遍历了解的不深刻不可以完全领悟其中的运营原理,所以出现没有结果输出的现象。在书中不断的了解分析下从而得到了解决,书本的知识很有作用。五、对算法的程序的讨论、分析,改善设想,其它经验教训: 通过这次这么复杂的程序实验,我终于发现了调用函数的巨大优越性,以前碰到都是很短的程序,感觉调用有点多余,但复杂的程序时,假如不采用调用的话,会使程序非常的乱,改程序时不知道从哪改,调用函数可以更好使程序简洁话,层次话,更加容易让人看懂这次实验的逻辑性给了我们很大启发,在程序不断复杂的今天只有很好了解程序的过程,把握程序中心思想才可以更好的完善研发程序,在不断的累积中达成更高的层次。实验六 排序一、 程序设计的基本思想,原理和算法描述排序是计算机程序设计中的一种重要操作。它的重要思想是将一个数据元素的任意序列,比较多种排序的优劣重要是看它排序的效率。重新排列成一个按关键字有序的序列,编写主函数,分别实现直接插入、冒泡排序(算法在P16)、快速排序、简朴选择排序、堆排序等排序算法。(1) 直接插入排序:是一种最简朴的排序,是将一个记录插入到已排好序的初始排列中冒泡排序;依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:一方面比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(由于也许由于第2个数和第3个数的互换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,反复以上过程,直至最终完毕排序。 由于在排序过程中总是小数往前放,大数往后放,相称于气泡往上升,所以称作冒泡排序。 用二重循环实现,外循环变量设为i,内循环变量设为j。外循环反复9次,内循环依次反复9,8,.,1次。每次进行比较的两个元素都是与内循环j有关的,它们可以分别用aj和aj+1标记,i的值依次为1,2,.,9,对于每一个i, j的值依次为1,2,.10-i。二、源程序及注释(打包上传):三、运营输出结果:四、调试和运营程序过程中产生的问题及采用的措施: 刚开始看到程序,太长,一点也看不懂它的意思,无从下手的感觉,这是就要考验人的耐心,慢慢看,结合书里所讲的知识,终于理解整个程序,尚有递归的使用,要注意,初始时的状态以及如何使用递归,注意普遍性,思考时从普通的开始。五、对算法的程序的讨论、分析,改善设想,其它经验教训:排序是非常重要的一种技术手段,可以提高效率,简化过程,选择何种排序方法需要我们更好的理解各种排序方法的重要思想及原理,这对我们以后工作的帮组是非常大的,通过这次这么复杂的程序实验,我终于发现了调用函数的巨大优越性,以前碰到都是很短的程序,感觉调用有点多余,但复杂的程序时,假如不采用调用的话,会使程序非常的乱,改程序时不知道从哪改,调用函数可以更好使程序简洁话,层次话,更加容易让人看懂这次实验的逻辑性给了我们很大启发。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 幼儿教育


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!