数据库课程设计--综合排序软件

数据库课程设计--综合排序软件

ID:11433115

大小:716.05 KB

页数:24页

时间:2018-07-12

数据库课程设计--综合排序软件_第1页
数据库课程设计--综合排序软件_第2页
数据库课程设计--综合排序软件_第3页
数据库课程设计--综合排序软件_第4页
数据库课程设计--综合排序软件_第5页
资源描述:

《数据库课程设计--综合排序软件》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、综合排序软件1.题目:利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。1)至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。并把排序后的结果保存在不同的文件中。2)统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。3)如果采用4种或4种以上的方法者,可适当加分。2.课题研究的目的和意义:排序是计算机程序设计中一种重要的操作,它的功能是将一个数据元素的任

2、意序列,重新排列成一个按关键字有序的序列。目前我们已经掌握的排序方法很多,每一种方法都有其各自的优点,通过对各种算法的研究以及不同方法之间的比较研究,能让我们可以从更高的层次上理解和掌握排序算法,而且能够在不同环境下,根据数据的不同特点,选择不同的方法。因此,我们开展对排序算法的研究将更有利于我们解决问题,提高效率。3.可行性论证:(1)就算法本身而言,它们是稳定的,时间复杂度是有限阶的,每种算法的思想是可行的。(2)处理数据(20000个随机数)是有限的,并且同过这些排序方法可以实现排序。4.

3、课程总体设计方案:(1)对小组内个成员进行分配,每位小组成员负责一种算法。(2)讨论研究流程:制定算法的总体思路,查阅相关资料,按照预先分配编写程序,程序整合,实验并修改。(3)对程序中的排序方法进行扩充,小组集体研究了简单选择排序,希尔排序,快速排序三种方法。(4)最后总结。5.若干关键技术及设计结果源程序:#include#include#include#defineMAXSIZE2300typedefintKeyType;typedef

4、intInfoType;typedefstruct{KeyTypekey;InfoTypeotherinfo;}RcdType;typedefstruct{RcdTyper[MAXSIZE+1];longlength;}SqList;SqListCreaList(){//建立longi;SqListL;for(i=1;i

5、(SqList*L){//打印longi;for(i=1;ir[i].key);}}//1折半SqListBInsertSort(SqListL,longbj1[],longjh1[]){bj1[0]=0;jh1[0]=0;longi,j,low,high,k;for(i=2;i<=L.length;++i){L.r[0]=L.r[i];jh1[0]+=1;low=1;high=i-1;while(low<=high){k=(low

6、+high)/2;if(L.r[0].key=high+1;j--){L.r[j+1]=L.r[j];jh1[0]+=1;}L.r[high+1]=L.r[0];jh1[0]+=1;}returnL;}//折半//2直接SqListInsertSort(SqListL,longbj2[],longjh2[]){longj,k;bj2[0]=0;jh2[0]=

7、0;for(k=2;k<=L.length;++k)if(L.r[k].key

8、SqListL,longbj3[],longjh3[]){longi,j;bj3[0]=0;jh3[0]=0;for(j=L.length;j>=2;j--)for(i=1;iL.r[i+1].key){L.r[0]=L.r[i];L.r[i]=L.r[i+1];L.r[i+1]=L.r[0];jh3[0]+=3;bj3[0]+=1;}elsebj3[0]+=1;}returnL;}//冒泡//4堆排序SqListHeapAdjust(SqListL,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。