数据结构作业报告.doc
《数据结构作业报告.doc》由会员分享,可在线阅读,更多相关《数据结构作业报告.doc(6页珍藏版)》请在三一办公上搜索。
1、华南农业大学信息学院 设计性、综合性实验 起止日期:2002 -2003 学年第一学期系别01计算机班级01计算机(4)班小 组 名实验题目实现各种排序算法并分析与比较设计性 综合性分工情况学号姓名分工得分2001374424吴晓辉算法思想,程序设计,调试并通过程序,写报告自我评价本程序完成实验要求的全部功能直接插入排序、SHELL排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序、基数排序,程序代码符合书写规范,实验报告叙述清晰完整,有详尽的分析和总结。在实验过程中,积极配合本团队分工合作的精神,努力学习,总算不负众望,将程序编好,在此,我更想感谢的是老师的教导,在她的帮助下,我才顺利
2、完成了本次的任务。教师评语l A-能够分工合作,体现良好的团队协作精神,完成实验要求的全部功能并运行通过,程序代码符合书写规范,实验报告叙述清晰完整,有详尽的分析和总结。l B-能够分工合作,体现良好的团队协作精神,完成实验要求的全部功能,程序代码符合书写规范,实验报告叙述清晰完整。l C-完成实验要求的大部分功能,实验报告良好。l D-未按时完成实验,或者抄袭。 教师签名: 一、需求分析本程序要求用函数实现如下算法:(1) 直接插入排序(2) 希尔排序(3) 冒泡排序(4) 快速排序(5) 选择排序(6) 堆排序(7) 归并排序(8) 基数排序并定量分析各种排序算法在正序、逆序、少量、大量情
3、况下的运行效率。1输入的形式和输入值的范围全部待排序的数据都是整形数据,范围为0 65535,并且为无序数列。2 输出的形式输出排好序的数列。3 程序所能达到的功能:本程序可以从磁盘文件读入数据,将其进行8种方法排序,程序代码清晰,结果输出简单。4 测试数据二、概要设计程序通过一个主函数(main)调用所有排序方法,大致的函数调用关系如下: 希尔排序直接插入排序选择排序冒泡排序主函数堆排序快速排序归并排序 基数排序二、 算法表述三、详细设计说明1直接插入排序假设待排序的记录存放在数组R0.n-1中,排序过程的某一中间时刻,R被划分成两个子区间R0i-1和Ri.n-1,其中:前一个子区间是已排好
4、序的有序区;后一个子区间则是当前未排序的部分。直接插入排序的基本操作是将当前无序区的第1个记录Ri插入到有序区R0.i-1中适当的位置,使R0i变为新的有序区。2 希尔排序先取定一个小于n的整数d作为第一个增量,把表的全部记录分成d组,所有距离为d1的倍数的记录放在同一组中,在各组内进行直接插入排序;然后取第二个增量d2d1,重复上述的分组和排序,直至增量d1,即所有记录放在同一组中进行直接插入排序为止。3 冒泡排序通过无序区中相邻记录关键字间的比较和位置的交换,使关键字最小的记录逐渐向上升。整个算法是从最下面的记录开始,对每两个个相邻的关键字进行比较,且使关键字小的记录换至关键字较大的位置,
5、使得经过一趟冒泡排序后,关键字最小的记录到达最上端,接着再在剩下的记录中找关键字次小的记录,并把它换至第二个位置上。依此类推,一直到所有记录都有序为止。4 快速排序在待排序的n个记录中任取一个记录(通常取第一个记录),把该记录放入最终位置后,数据序列被此记录分割成两部分。所有比它大的记录放置在后一部分,所有比它小的记录放置在前一部分,并把该记录排在这两部分之间,这个过程称作一趟快速排序。之后对所有的两部分分别重复上述过程,直至每部分内只有一个记录为止。简而言之,每趟使表的第一个元素入终位,将表一分为二,对子表按递归方式继续这种划分,直至划分的子表长为1。5 选择排序基本思想:第i趟排序开始时,
6、当前有序区和无序区分别为R0.i-1和Rin-1,该趟排序则是从无序区中选出关键字最小的记录Rk,它与无序区的第一个记录Ri交换,使R0i和Ri+1n分别变为新的有序区和无序区。因为每趟排序使有序区中增加一个记录,且有序区的记录均不大于无序区中记录的关键字,即第i趟排序之后R0i的所有关键字等于Ri+1.n-1中的所有关键字,所以进行n-1趟之后有R0.n-2的所有关键字小于等于其后所有关键字,也就是说,经过n-1趟排序后,整个表R0.n-1递增有序.6 堆排序堆排序是在排序过程中,将顺序表中存储的数据看成是一棵完全而叉树,利用完全二叉树中双亲结点和孩子结点之间的内在联系来选择关键字最小记录。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 作业 报告
链接地址:https://www.31ppt.com/p-2396612.html