網上查了好多資料,不同排序演算法的實現可能有多種,但網上有一些放到**中無法執行,各種錯誤,並且有些並不是最優演算法,以下為本人整理的比較靠譜的**:
1 快速排序:
public class quicksort
i = low;
j = hight;
index = a[i]; // 用子表的第乙個記錄做基準
while (i < j)
a[i] = index;// 將基準數值替換回 a[i]
sort(a, low, i - 1); // 對低子表進行遞迴排序
sort(a, i + 1, hight); // 對高子表進行遞迴排序
} python快速排序;
2 氣泡排序:
public void sort(int arr) }
system.out.println(arr); }
3 簡單插入排序
public class insertsort
a[j + 1] = insertnote;// 直到要插入的元素不小於第j個元素,將insertnote插入到陣列中 }
}4 選擇排序:
public static void selectsort(int a)
for (int i = 0; i < a.length; i++) }
if (flag != i) }
}
排序演算法總結(java實現)
排序演算法的分類如下 1.插入排序 直接插入排序 折半插入排序 希爾排序 2.交換排序 冒泡泡排序 快速排序 3.選擇排序 直接選擇排序 堆排序 4.歸併排序 5.基數排序。關於排序方法的選擇 1 若n較小 如n 50 可採用直接插入或直接選擇排序。當記錄規模較小時,直接插入排序較好 否則因為直接選...
常見的排序演算法總結(JAVA實現)
插入排序 直接插入排序 希爾排序。選擇排序 直接選擇排序 堆排序。交換排序 氣泡排序 快速排序。歸併排序。基數排序。思路 對於一組資料,先將第乙個和第二個數排序,再將第三個數插入之前已經有序序列中形成新的有序序列,以此類推。也就是對於第n個數的排序,是將這第n個數插入到前n 1個數的有序序列中,從而...
排序演算法總結及java實現
十種排序演算法的基本特性 排序演算法 平均時間複雜度 最好情況 最壞情況 空間複雜度 排序方式 穩定性快速排序 nlogn nlogn n2 logn in place 不穩定歸併排序 nlogn nlogn nlogn n out place 穩定堆排序 nlogn nlogn nlogn 1 i...