大数据结构课程设计_排序算法比较【完整版】

2026/1/27 17:52:25

插入排序

3、系统将随机数排序后整齐的显示出来。

4、用户可以选择继续排序或者退出系统。

七、程序源代码

/********************************************************************************************** 第六题:排序算法比较

设计要求:利用随机函数产生N个随机整数(N = 500,1000,1500,2000,2500,…,30000),

利用直接插入排序、折半插入排序,起泡排序、快速排序、||选择排序、堆排序,基数排序七种排序方法

(可添加其它排序方法)进行排序(结果为由小到大的顺序),并统计每一种排序所耗费的时间(统计

为图表坐标形式)。

************************************************************************************************/ #include \#include \

#include \中折半查找有序插入的位置 { mid=(low+high)/2; if[0]<[mid]) high]的记录,使得枢轴记录到位,并返回其所在位置,此时在它之前(后)的记录均不大于它 { int pivotkey; i]中最后一个记录互换 [1]=[i]; [i]=t; HeapAdjust(L,1,i-1); i-1]重新调整为大顶堆

} return OK; }

//************************************************** // 基数排序

//************************************************** typedef struct node{ int key; node *next; }RecType;

Status RadixSort(Sqlist L) { int t,i,j,k,d,n=1,m; RecType *p,*s,*q,*head[10],*tail[10]; //定义各链队的首尾指针 for(i=1;i<=;i++) //将顺序表转化为链表 { s=(RecType*)malloc(sizeof(RecType)); s->key=[i]; if(i==1) //当为第一个元素时 { q=s; p=s; t++; } else { q->next=s; //将链表连接起来 q=s; t++; } q->next=NULL; } d=1; while(n>0) //将每个元素分配至各个链队 { for(j=0;j<10;j++) //初始化各链队首、尾指针 { head[j] = NULL; tail[j] = NULL; } while(p!=NULL) //对于原链表中的每个结点循环 { k=p->key/d;


大数据结构课程设计_排序算法比较【完整版】.doc 将本文的Word文档下载到电脑
搜索更多关于: 大数据结构课程设计_排序算法比较【完整版】 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219