四種C#排序算法代碼示例
作者:佚名 
  這里將展示四種C#排序算法代碼示例,包括冒泡排序(Bubble)、選擇排序(Selection)、插入排序(InsertionSorter)等四種。
 C#排序算法一般都涉及到循環(huán),以及賦值。通過排序,能進(jìn)行簡單的統(tǒng)計(jì)與分類,具有極其重要的價(jià)值。這里將介紹四種不同的C#排序算法代碼,希望對(duì)大家有所幫助。 
 C#排序算法一、冒泡排序(Bubble)
- using System;
 - namespace BubbleSorter
 - {
 - public class BubbleSorter
 - {
 - public void Sort(int[] list)
 - {
 - int i,j,temp;
 - bool done=false;
 - j=1;
 - while((j{
 - done=true;
 - for(i=0;i{
 - if(list[i]>list[i+1])
 - {
 - done=false;
 - temp=list[i];
 - list[i]=list[i+1];
 - list[i+1]=temp;
 - }
 - }
 - j++;
 - }
 - }
 - }
 - public class MainClass
 - {
 - public static void Main()
 - {
 - int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};
 - BubbleSorter sh=new BubbleSorter();
 - sh.Sort(iArrary);
 - for(int m=0;mConsole.Write("{0} ",iArrary[m]);
 - Console.WriteLine();
 - }
 - }
 - }
 
C#排序算法二、選擇排序(Selection)
- using System;
 - namespace SelectionSorter
 - {
 - public class SelectionSorter
 - {
 - private int min;
 - public void Sort(int [] list)
 - {
 - for(int i=0;i{
 - min=i;
 - for(int j=i+1;j{
 - if(list[j]min=j;
 - }
 - int t=list[min];
 - list[min]=list[i];
 - list[i]=t;
 - }
 - }
 - }
 - public class MainClass
 - {
 - public static void Main()
 - {
 - int[] iArrary = new int[]{1,5,3,6,10,55,9,2,87,12,34,75,33,47};
 - SelectionSorter ss=new SelectionSorter();
 - ss.Sort(iArrary);
 - for (int m=0;mConsole.Write("{0} ",iArrary[m]);
 - Console.WriteLine();
 - }
 - }
 - }
 
C#排序算法三、插入排序(InsertionSorter)
- using System;
 - namespace InsertionSorter
 - {
 - public class InsertionSorter
 - {
 - public void Sort(int [] list)
 - {
 - for(int i=1;i{
 - int t=list[i];
 - int j=i;
 - while((j>0)&&(list[j-1]>t))
 - {
 - list[j]=list[j-1];
 - --j;
 - }
 - list[j]=t;
 - }
 - }
 - }
 - public class MainClass
 - {
 - public static void Main()
 - {
 - int[] iArrary=new int[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47};
 - InsertionSorter ii=new InsertionSorter();
 - ii.Sort(iArrary);
 - for(int m=0;mConsole.Write("{0}",iArrary[m]);
 - Console.WriteLine();
 - }
 - }
 - }
 
C#排序算法四、希爾排序(ShellSorter)
- using System;
 - namespace ShellSorter
 - {
 - public class ShellSorter
 - {
 - public void Sort(int [] list)
 - {
 - int inc;
 - for(inc=1;inc<=list.Length/9;inc=3*inc+1);
 - for(;inc>0;inc/=3)
 - {
 - for(int i=inc+1;i<=list.Length;i+=inc)
 - {
 - int t=list[i-1];
 - int j=i;
 - while((j>inc)&&(list[j-inc-1]>t))
 - {
 - list[j-1]=list[j-inc-1];
 - j-=inc;
 - }
 - list[j-1]=t;
 - }
 - }
 - }
 - }
 - public class MainClass
 - {
 - public static void Main()
 - {
 - int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};
 - ShellSorter sh=new ShellSorter();
 - sh.Sort(iArrary);
 - for(int m=0;mConsole.Write("{0} ",iArrary[m]);
 - Console.WriteLine();
 - }
 - }
 - }
 
【編輯推薦】
責(zé)任編輯:彭凡 
                    來源:
                    CSDN
 














 
 
 








 
 
 
 