2013-08-14

排序演算法 Sorting algorithm

排序演算法 Sorting algorithm


泡沫排序法(Bubble Sort)

原理:逐次比較兩個相鄰的資料,按照排序的條件交換位置,直到全部資料依序排好為止。

泡沫排序法的特性 :
1、循環次數=資料個數-1
2、在每一次排列循環之後,到少有一個資料可以排列到正確位置;再進行下一個循環的排列時,便可以減少此資料的比較。


程式碼:

For i = 5 To 1 Step -1'將一個資料排到位置
If aData(i) < aData(i - 1) Then
tmp = aData(i - 1)
aData(i - 1) = aData(i)
aData(i) = tmp
End If


選擇排序法(Selection Sort)

原理:第一遍由資料中選取最小的資料和第一個資料對調、第二遍由資料中選取第二小的資料和第二個資料對調(因最小的資料已排到第一個位置)、依此循環直到最後一個資料,即完成資料的排序。



插入排序(Insertion Sort)

 原理:先由最初的二個數排列好,找出第三個數(下一個尚未排列的數)來依序和已完成排列的數比較後,決定插入的位置,放入資料後將其後的資料向後移。重覆上述步驟直到最後一個資料,即完成資料的排序。