内部排序算法比较(6)

2019-02-15 15:33

数据结构课程设计

bj1++; R1[k]=R[i]; yd1++; i++; k++; } else { bj1++; R1[k]=R[j]; yd1++; j++; k++; } }

while(i<=m) {

R1[k]=R[i]; yd1++; i++; k++; }

while(j<=high) {

R1[k]=R[j]; yd1++; j++; k++; } }

void MergePass(ElemType R[],ElemType R1[],int length, int n) { int i=0,j;

while(i+2*length-1

24

数据结构课程设计

{

Merge(R,R1,i,i+length-1,i+2*length-1); i=i+2*length; }

if(i+length-1

Merge(R,R1,i,i+length-1,n-1); else

for(j=i;j

void MSort(ElemType R[],ElemType R1[],int n) {

int length=1; while (length

MergePass(R,R1,length,n); length=2*length;

MergePass(R1,R,length,n); length=2*length; } }

void MergeSort(SqList &L) {

start_t=clock(); BeforeSort();

MSort(L.elem,L.elem,L.length); display(bj1,yd1); end_t=clock();

t5=(double)(end_t-start_t)/CLK_TCK; printf(\排序用时为 %f\\n\ A[5]=bj1; B[5]=yd1; C[5]=t5;

25

数据结构课程设计

}

void printf(SqList &L) {

long int d[6]; int i,n;

printf(\★★★★★★比较次数★★★★★★\\n\printf(\ for(i=0;i<5;i++) d[i]= sqrt (A[i]/A[5]); printf(\ 归并排序: *\

printf(\ printf(\ 选择排序: \ for(n=0,i=0;n<=d[i];n++) {

printf(\ }

printf(\ printf(\ 冒泡排序: \ for(n=0,i=1;n<=d[i];n++) {

printf(\ }

printf(\ printf(\ 直插排序: \ for(n=0,i=2;n<=d[i];n++) {

printf(\ }

printf(\ printf(\ 希尔排序: \ for(n=0,i=3;n<=d[i];n++) {

printf(\

26

数据结构课程设计

}

printf(\ printf(\ 快排排序: \ for(n=0,i=4;n<=d[i];n++) {

printf(\ }

printf(\

printf(\★★★★★★移动次数★★★★★★\\n\ printf(\ double e[6]; for(i=0;i<6;i++) e[i]= sqrt (B[i]/B[3]); printf(\ 希尔排序: *\

printf(\ printf(\ 选择排序: \ for(n=0,i=0;n<=e[i];n++) {

printf(\ }

printf(\ printf(\ 冒泡排序: \ for(n=0,i=1;n<=e[i];n++) {

printf(\ }

printf(\ printf(\ 直插排序: \ for(n=0,i=2;n<=e[i];n++) {

printf(\ }

printf(\

27

数据结构课程设计

printf(\ 快排排序: \ for(n=0,i=4;n<=e[i];n++) {

printf(\ }

printf(\

printf(\ 归并排序: \ for(n=0,i=5;n<=e[i];n++) {

printf(\ }

printf(\

printf(\★★★★★★排序用时★★★★★★\\n\ printf(\ double f[6]; for(i=0;i<6;i++) f[i]= sqrt (C[i]/0.001); printf(\ 希尔排序: *\

printf(\ printf(\ 选择排序: \ for(n=0,i=0;n<=f[i];n++) {

printf(\ }

printf(\ printf(\ 冒泡排序: \ for(n=0,i=1;n<=f[i];n++) {

printf(\ }

printf(\ printf(\ 直插排序: \ for(n=0,i=2;n<=f[i];n++)

28


内部排序算法比较(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高等数学 解题步骤

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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