插入排序_希尔排_快速排序_冒泡排序_c算法.docVIP

插入排序_希尔排_快速排序_冒泡排序_c算法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
插入排序_希尔排_快速排序_冒泡排序_c算法

//排序 #include stdio.h int partions(int l[],int low,int high) { int prvotkey=l[low]; l[0]=l[low]; while (lowhigh) { while (lowhighl[high]=prvotkey) --high; l[low]=l[high]; while (lowhighl[low]=prvotkey) ++low; l[high]=l[low]; } l[low]=l[0]; return low; } void qsort(int l[],int low,int high) { int prvotloc; if(lowhigh) { prvotloc=partions(l,low,high); //将第一次排序的结果作为枢轴 qsort(l,low,prvotloc-1); //递归调用排序 由low 到prvotloc-1 qsort(l,prvotloc+1,high); //递归调用排序 由 prvotloc+1到 high } } void quicksort(int l[],int n) { qsort(l,1,n); //第一个作为枢轴 ,从第一个排到第n个 } void main() { int a[11]={0,2,32,43,23,45,36,57,14,27,39}; for (int b=1;b11;b++) printf(%3d,a[b]); printf(\n); quicksort(a,11); for(int c=1;c11;c++) printf(%3d,a[c]); } 一、主界面 void main() { const int numv=12; int [3][numv]={{0,6,13,19,23,37,39,41,45,48,58,86},{0,86,58,48,45,41,39,37,23,19,13,6},{0,23,13,48,86,19,6,41,58,37,45,39}}; int z1[numv],z2[numv]; int m,n,i,j,k; printf(\t\t*******************************************\n); printf(\t\t\t\t 排 序\n); printf(\t\t*******************************************\n); printf(\t\t\t请选择测试数据类型:1正序 \n ); printf(\t\t\t请选择测试数据类型:2逆序\n ); printf(\t\t\t请选择测试数据类型:3随机\n ); printf(\t\t\t返回,请按4\n ); printf(\t\t*******************************************\n); scanf(%d,m); while(m0 m4) { system(cls); printf(\t\t*******************************************\n); printf(\t\t\t\t 排序方法选择\n); printf(\t\t*******************************************\n); printf(\t\t\t请选择排序算法:1直接插入排序 \n); printf(\t\t\t请选择排序算法:2希尔排序 \n); printf(\t\t\t请选择排序算法:3冒泡排序 \n); printf(\t\t\t请选择排序算法:4快速排序\n); printf(\t\t\t请选择排序算法:5简单选择排序\n); scanf(%d,n); switch(n) { case 1: printf( 直接插入排序前:\n); for( j=1;jnumv;j++) printf(%d ,a[m-1][j]); printf( \n直接插入排序结果为:\n); BiInsertsort(a[m-1],numv-1); break; case 2: printf( \n希尔排序前:\n); for( j=1;jnumv;j++)

文档评论(0)

yasou511137 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档