C语言版数据结构实验报告_第1页
C语言版数据结构实验报告_第2页
C语言版数据结构实验报告_第3页
C语言版数据结构实验报告_第4页
C语言版数据结构实验报告_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、苏州科技学院数据结构(CC语言版版)实验报告专业班级 测测绘09911 学 号 0992011151130 姓 名 朱朱辉 实习地点 C1-2033 指导教师 史守守正 实验四 图程序设计的的基本思思想,原原理和算算法描述述:图是一种较较线性表表和树更更加复杂杂的一种种数据结结构,在在图形结结构中,结结点之间间的关系系可以是是任意的的,图中中任意两两个数据据元素之之间都可可能相关关,图主主要有无无向图,有有向图等等(1)建立立无向网网的邻接接矩阵存存储并输输出,参参考程序序清单,实实现无向向图的邻邻接矩阵阵表示。(2)建立立图的邻邻接表存存储并在在此基础础上实现现图的深深度优先先遍历和和广度优

2、优先遍历历备注:无向向图已完完成,无无向网需需要自己己建立(参照算算法7.2);参照算算法7.4, 7.55,7.6完成成图的深深度遍历历,广度度遍历;请添加加适当的的注释。二、源程序序及注释释(打包包上传):三、运行输输出结果果:四、调试和和运行程程序过程程中产生生的问题题及采取取的措施施:在程序编辑辑的过程程中,有有许多地地方出现现不能顺顺序运行行的,还还有代码码出现遗遗漏出错错,图的的遍历是是重点但但因为知知识的残残缺不能能完整的的编译出出来,又又或者编编译的程程序不能能正确的的得到结结果,再再通过多多人合作作共同讨讨论后得得到了满满意的解解决。五、对算法法的程序序的讨论论、分析析,改进

3、进设想,其其它经验验教训:经过这次这这么复杂杂的程序序实验,我我终于发发现了调调用函数数的巨大大优越性性,以前前遇到都都是很短短的程序序,感觉觉调用有有点多余余,但复复杂的程程序时,如如果不采采用调用用的话,会会使程序序非常的的乱,改改程序时时不知道道从哪改改,调用用函数能能够更好好使程序序简洁话话,层次次话,更更加容易易让人看看懂这次次试验的的逻辑性性给了我我们很大大启发通通过本次次实验让让我对图图有了更更深刻的的认识,再再通过多多次的更更改后终终于将实实验做出出来,在在实验中中也出现现了许多多问题,有有不出结结果,有有不能运运行的,但但最终只只要努力力都会搞搞定的实验五 查找找一、程序设设

4、计的基基本思想想,原理理和算法法描述:实现二叉排排序树上上的查找找、插入入、删除除算法。具具体实现现要求:用二叉链表表做存储储结构,输输入键值值序列,利利用查找找、插入入算法建建立一棵棵二叉排排序树。按中序遍历历这棵二二叉排序序树。在二叉排序序树上插插入结点点。删除二叉排排序树上上的结点点。二、源程序序及注释释(打包包上传):三、运行输输出结果果:四、调试和和运行程程序过程程中产生生的问题题及采取取的措施施:查找是一种种常用到到的方法法在程序序中十分分常见,在在程序运运行中。由由于对遍遍历了解解的不深深刻不能能够完全全领悟其其中的运运行原理理,所以以出现没没有结果果输出的的现象。在在书中不不断

5、的了了解分析析下从而而得到了了解决,书书本的知知识很有有作用。五、对算法法的程序序的讨论论、分析析,改进进设想,其其它经验验教训: 经过这次次这么复复杂的程程序实验验,我终终于发现现了调用用函数的的巨大优优越性,以以前遇到到都是很很短的程程序,感感觉调用用有点多多余,但但复杂的的程序时时,如果果不采用用调用的的话,会会使程序序非常的的乱,改改程序时时不知道道从哪改改,调用用函数能能够更好好使程序序简洁话话,层次次话,更更加容易易让人看看懂这次次试验的的逻辑性性给了我我们很大大启发,在在程序不不断复杂杂的今天天只有很很好了解解程序的的过程,把把握程序序中心思思想才能能够更好好的完善善研发程程序,

6、在在不断的的累积中中达到更更高的层层次。实验六 排序序程序设计的的基本思思想,原原理和算算法描述述排序是计算算机程序序设计中中的一种种重要操操作。它它的主要要思想是是将一个个数据元元素的任任意序列列,比较较多种排排序的优优劣主要要是看它它排序的的效率。重重新排列列成一个个按关键键字有序序的序列列,编写写主函数数,分别别实现直直接插入入、冒泡泡排序(算算法在PP16)、快快速排序序、简单单选择排排序、堆堆排序等等排序算算法。直接插入排排序:是是一种最最简单的的排序,是是将一个个记录插插入到已已排好序序的初始始排列中中冒泡排序;依次比比较相邻邻的两个个数,将将小数放放在前面面,大数数放在后后面。即

7、即在第一一趟:首首先比较较第1个个和第22个数,将将小数放放前,大大数放后后。然后后比较第第2个数数和第33个数,将将小数放放前,大大数放后后,如此此继续,直直至比较较最后两两个数,将将小数放放前,大大数放后后。至此此第一趟趟结束,将将最大的的数放到到了最后后。在第第二趟:仍从第第一对数数开始比比较(因因为可能能由于第第2个数数和第33个数的的交换,使使得第11个数不不再小于于第2个个数),将将小数放放前,大大数放后后,一直直比较到到倒数第第二个数数(倒数数第一的的位置上上已经是是最大的的),第第二趟结结束,在在倒数第第二的位位置上得得到一个个新的最最大数(其其实在整整个数列列中是第第二大的的

8、数)。如如此下去去,重复复以上过过程,直直至最终终完成排排序。 由于在在排序过过程中总总是小数数往前放放,大数数往后放放,相当当于气泡泡往上升升,所以以称作冒冒泡排序序。 用二重重循环实实现,外外循环变变量设为为i,内内循环变变量设为为j。外外循环重重复9次次,内循循环依次次重复99,8,.,11次。每每次进行行比较的的两个元元素都是是与内循循环j有有关的,它它们可以以分别用用ajj和aaj+1标标识,ii的值依依次为11,2,.,9,对对于每一一个i, j的的值依次次为1,2,.110-ii。二、源程序序及注释释(打包包上传):三、运行输输出结果果:四、调试和和运行程程序过程程中产生生的问题

9、题及采取取的措施施: 刚开开始看到到程序,太太长,一一点也看看不懂它它的意思思,无从从下手的的感觉,这这是就要要考验人人的耐心心,慢慢慢看,结结合书里里所讲的的知识,终终于理解解整个程程序,还还有递归归的使用用,要注注意,初初始时的的状态以以及如何何使用递递归,注注意普遍遍性,思思考时从从普通的的开始。五、对算法法的程序序的讨论论、分析析,改进进设想,其其它经验验教训:排序是非常常重要的的一种技技术手段段,能够够提高效效率,简简化过程程,选择择何种排排序方法法需要我我们更好好的理解解各种排排序方法法的主要要思想及及原理,这这对我们们以后工工作的帮帮组是非非常大的的,经过过这次这这么复杂杂的程序序实验,我我终于发发现了调调用函数数的巨

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论