第一范文网 - 专业文章范例文档资料分享平台

几种常见的排序算法的实现与性能分析数据结构课程设计报告

来源:用户分享 时间:2025/5/25 14:07:41 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

}

for(i=1;i<=L;i++) {

case '1':Insertsort();break; case '2':Shellsort();break; case '3':Bubblesort();break;

printf(\尚未排序的数据为(回车继续):\ for(k=1;k<=L;k++)

printf(\ num=0;QuickSort(1,L); break;

getchar();printf(\R[i]=s[i]; switch(ch2)

case '4':

case '5':Selectsort();break; case '0':ch1='n';break;

default:printf(\输入错误!请重新输入!\\n\\t\\t\

case '6':Heap();break;

if(ch2!='0') {

if(ch2=='2'||ch2=='3'||ch2=='4'||ch2=='5'||ch2=='6'||ch2=='7'||ch2=='8') } }

8

printf(\排序演示输出完毕!\\n\q=getchar(); if (q!='\\xA') {

getchar();ch1='n'; }

printf(\请按回车键返回主菜单...\

}

开始 输入要排序的一组元素 int i,j,k,m=0 k=1 N k<=L Y printf(“],”R[k]);

k++ getchar(); i=2 i<=L Y Y Maltiplex i++ N printf(“/n/n”); Maltiplex 结束

9

4.22直接排序关键字比较次数和移动次数的流程图

此函数void Insertsort()的程序代码如下:

void Insertsort()//直接插入排序 { int i,j,k,m=0; printf(\尚未排序的数据为(回车继续):\

for(k=1;k<=L;k++)

printf(\getchar(); printf(\for(i=2;i<=L;i++) { if(R[i]

{

times++; changes++; R[j+1]=R[j];j--; }

R[j+1]=R[0];

changes++;

}

m++; times++;

}

printf(\ printf(\最终排序结果为:\

for(i=1;i<=L;i++)

printf(\printf(\

10

printf(\直接插入排序的比较次数为%d\ printf(\直接插入排序的移动次数为%d\ times=0; changes=0; }

开始 输入要排序的一组元素 初始化变量i,j,gap=L/2,m=0 m小于gap i小于元素总个数 j=i+gap j小于元素总个数 第i个元素大于第j个元素 交换第i个元素第j个元素 gap为原来的一半

11

几种常见的排序算法的实现与性能分析数据结构课程设计报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c6bkk90ykbq2ubi87rwwb_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top