电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

八大排序算法总结

八大排序算法总结_第1页
1/4
八大排序算法总结_第2页
2/4
八大排序算法总结_第3页
3/4
插入排序1、直接插入排序原理:将数组分为无序区与有序区两个区,然后不断将无序区得第一个元素按大小顺序插入到有序区中去,最终将所有无序区元素都移动到有序区完成排序。要点:设立哨兵,作为临时存储与推断数组边界之用。实现:Void In s ertS o rt(N o de L[],i nt le n g th){In t i,j;//分别为有序区与无序区指针for(i=1;i=1)//直到增量缩小为1{Shell(L,d);d=d/2;//缩小增量}}Void Sh e l l(N ode L[],int d){I nt i,j;For(i=d+1;i<l en g th;i++){if(L[i]0&&L[j]>L[0]){L[j+d]=L[j];//移动j=j-d;//查找}L[j+d]=L[0];}}}交换排序1、冒泡排序原理:将序列划分为无序与有序区,不断通过交换较大元素至无序区尾完成排序。要点:设计交换推断条件,提前结束以排好序得序列循环。实现:Void Bu bb l e So rt(N o de L[]){Int i ,j;B o o l i s ch an ged;//设计跳出条件For(j=n;j<0;j--){ischa n g e d =fa ls e;Fo r(i=0;iL[i+1])//假如发现较重元素就向后移动{In t tem p=L[i];L[i]=L[i+1];L[i+1]=temp;Ischanged =t r ue;}}I f(!isch a n ge d)//若没有移动则说明序列已经有序,直接跳出B r e ak;}}2、快速排序原理:不断寻找一个序列得中点,然后对中点左右得序列递归得进行排序,直至全部序列排序完成,使用了分治得思想。要点:递归、分治实现:选择排序1、直接选择排序原理:将序列划分为无序与有序区,寻找无序区中得最小值与无序区得首元素交换,有序区扩大一个,循环最终完成全部排序。要点:实现:Void S ele c tSor t(Nod...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

八大排序算法总结

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部