1、氣泡排序
氣泡排序是最慢的排序演算法。在實際運用中它是效率最低的演算法。它通過一趟又一趟地比較陣列中的每乙個元素,使較大的資料下沉,較小的資料上公升。它是o(n^2)的演算法。
2、插入排序
插入排序通過把序列中的值插入乙個已經排序好的序列中,直到該序列的結束。
3、shell排序
shell排序通過將資料分成不同的組,先對每一組進行排序,然後再對所有的元素進行一次插入排序,以減少資料交換和移動的次數。平均效率是o(nlogn)。
氣泡排序c#實現:
///氣泡排序///氣泡排序
/// public
class
bubblesort : isort}}
return
array;
}public
static
void swap(ref
int int1, ref
intint2)}}
插入排序c#實現:
///插入排序///插入排序
/// public
class
insertsort : isort
array[preindex + k] =current;}}
return
array;}}
shell排序c#實現:
///shell排序///shell排序
/// public
class
shellsort : isort
;foreach (int k in
list)
array[preindex + k] =current;}}
}return
array;}}
效能測試**:
class效能測試program
}
結果截圖:
初級排序演算法
回顧之前學習的各種排序演算法,從初級到高階,包括選擇排序,氣泡排序,插入排序,希爾排序,快速排序,歸併排序,堆排序等等,持續更新中 注 這裡實現的演算法都是遞增排序,也就是從小到大排序。思想 首先,找到陣列中最小的那個元素,其次,將它和陣列的第乙個元素交換位置 如果第乙個元素就是最小元素那麼它就和自...
初級排序演算法
排序模板 public class example private static boolean less comparable v,comparable w private static void exch comparable a,int i,int j private static void ...
三大排序演算法
當前結果是從大到小,若想從小到大排序,將a j a j 1 改為 a j a j 1 即可 a 1,4,2,5,22,3 n len a for i in range 1 n for j in range n i if a j a j 1 a j a j 1 a j 1 a j print a 當前...