C#排序算法汇总

C#排序算法汇总

ID:38189693

大小:38.50 KB

页数:4页

时间:2019-05-24

C#排序算法汇总_第1页
C#排序算法汇总_第2页
C#排序算法汇总_第3页
C#排序算法汇总_第4页
资源描述:

《C#排序算法汇总》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、冒泡排序namespaceSorter{publicclassMainClass{publicstaticvoidMain(){//int[]iArrary=newint[]{1,2,3,6,7};//最好的情况,外循环1次,内循环4次,为n-1,时间复杂度为n-1=O(n)int[]iArrary=newint[]{7,6,3,2,1};//最坏的情况,外循环4次,内循环分别4,3,2,1次为n(n-1)/2,每次循环带来3次数据交换,所以时间复杂度为3*n*(n-1)/2=O(n2)//影响冒泡算法效率主要是交换数据带来的移动效率低BubbleSort(iArrary);

2、Console.Read();}//冒泡排序(BubbleSort)的基本思想是:将相邻的记录的关键码进行比较,若前面记录的关键码大于后面记录的关键码,则将它们交换,否则不交换。publicstaticvoidBubbleSort(int[]list){inttemp;boolIfChanged=false;//默认没有交换数据for(intj=1;j<=list.Length-1;j++){for(inti=0;i<=list.Length-j-1;i++){if(list[i]>list[i+1]){IfChanged=true;//交换了数据temp=list[i];l

3、ist[i]=list[i+1];list[i+1]=temp;}}if(IfChanged==false)break;//如果没有发生数据交换,直接退出IfChanged=false;//恢复默认值Console.WriteLine("第"+j.ToString()+"次排序的结果");for(intm=0;m

4、orter{privateintmin;publicvoidSort(int[]list){for(inti=0;i

5、ectionSorter();ss.Sort(iArrary);for(intm=0;m0)&&

6、(list[j-1]>t)){list[j]=list[j-1];--j;}list[j]=t;}}}publicclassMainClass{publicstaticvoidMain(){int[]iArrary=newint[]{1,3,2,7,6};InsertionSorterii=newInsertionSorter();ii.Sort(iArrary);for(intm=0;m

7、singSystem;namespaceShellSorter{publicclassShellSorter{publicvoidSort(int[]list){intinc;for(inc=1;inc<=list.Length/9;inc=3*inc+1);for(;inc>0;inc/=3){for(inti=inc+1;i<=list.Length;i+=inc){intt=list[i-1];intj=i;while((j>inc)&&(list[j-inc-1]>t)){list[j-1]=l

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。