冒泡排序 using System; namespace BubbleSorter ... { public class BubbleSorter ... { public void Sort( int [] list) ... { int i,j,temp; bool done = false ; j = 1 ; while ((j<list.Length) && ( ! done)) ... { done = true ; for (i = 0 ;i<list.Length - j;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 ;m<iArrary.Length;m ++ ) Console.Write( " {0} " ,iArrary[m]); Console.WriteLine(); } } } 选择排序 using System; namespace SelectionSorter ... { public class SelectionSorter ... { private int min; public void Sort( int [] list) ... { for ( int i = 0 ;i<list.Length - 1 ;i ++ ) ... { min = i; for ( int j = i + 1 ;j<list.Length;j ++ ) ... { if (list[j]<list[min]) 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 ;m<iArrary.Length;m ++ ) Console.Write( " {0} " ,iArrary[m]); Console.WriteLine(); } } } 插入排序 using System; namespace InsertionSorter ... { public class InsertionSorter ... { public void Sort( int [] list) ... { for ( int i = 1 ;i<list.Length;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 ;m<iArrary.Length;m ++ ) Console.Write( " {0} " ,iArrary[m]); Console.WriteLine(); } } } 希尔排序 希尔排序是将组分段,进行插入排序. 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