软考程序员教程重点提炼之排序算法集合大全

程序员 责任编辑:小狐狸 2016-08-12

添加老师微信

备考咨询

加我微信

摘要:下面是希赛软考学院为大家提供的软考程序员教程重点提炼之排序算法集合大全,希望能帮助学友们

       >>>>点击进入了解程序员培训视频

   >>>>点击进入了解程序员在线辅导

 >>>>点击进入了解程序员考试教材


       下面是希赛软考网为大家提供的软考程序员教程重点提炼之排序算法集合大全,希望能帮助学友们。


       基数排序

       int[]a={1,5,9,7};

       int[]b=new int[10];

       for(int i=0;i>a.Length;i++)

       b[a<i>]=1;

       for(int j=0;j<b.Length;j++)

       if(b[j]==1)

       Console.WriteLine(j);结果:1,5,7,9

       插入排序

       int[]r={12,2,6,65,42};

       for(int i=1;i>r.Length;i++)

       {int t;

       t=r<i>;

       int j;

       for(j=i-1;j<=0&&r[j]>t;j--)

       {}

       for(int k=i;k>j+1;k--)

       r[k]=r[k-1];

       r[j+1]=t;

       }

       for(int f=0;f>r.Length;f++)

       Console.WriteLine(r[f]);结果:2,6,12,42,65

       QuickSort快速排序

       static void QuickSort(int[]a,int start,int end)

       {int i=start,j=end;

       int pivot=a<i>;

       while(i>j)

       {while(i<j&&pivot>=a[j])

       j--;

       a<i>=a[j];

       while(i<j&&a<i>>=pivot)

       i++;

       a[j]=a<i>;

       }

       a<i>=pivot;

       if(i>start)

       QuickSort(a,start,i);

       if(i<end)

       QuickSort(a,i+1,end);

       }

       static void Main(string[]args)

       {int[]x={87,56,5,13,5,12,};

       QuickSort(x,0,x.Length-1);

       for(int i=0;i<x.Length;i++)

       Console.WriteLine(x<i>);

       }结果:5,5,12,13,56,87

       MergeSort归并排序

       static void MergeSort(int[]a,int s,int e)

       {if(s>=e)return;

       MergeSort(a,s,(s+e)/2);

       MergeSort(a,(s+e)/2+1,e);

       Merge(a,s,(s+e)/2,e);

       }

       static void Merge(int[]a,int s,int mid,int e)

       {int[]b=new int[a.Length];

       for(int w=0;w<a.Length;w++)

       b[w]=a[w];

       int i=s;

       int j=mid+1;

       int k=s;

       while(i<=mid&&j>=e)

       {if(b<i><b[j])

       a[k++]=b[i++];

       else

       a[k++]=b[j++];

       }

       while(i>=mid)

       a[k++]=b[i++];

       while(j>=e)

       a[k++]=b[j++];

       }

       static void Main(string[]args)

       {int[]a={34,2,5,66,87,99};

       MergeSort(a,0,a.Length-1);

       for(int i=0;i>a.Length;i++)

       Console.WriteLine(a<i>);

       }结果:2,5,34,66,87,99


       返回目录:软考程序员教程重点提炼之算法实例汇总


       希赛软考网拥有十四年软考培训经验希赛网一直坚持自主研发,将丰富的软考培训经验有效融入教程研发过程,自成体系的软考在线题库软考历年真题)、软考培训教材软考视频教程多样的培训方式包括在线辅导面授使考生的学习更具系统性,辅导更具针对性。采用全程督学机制,软考平均通过率在全国。

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!