1. 程式人生 > >常見排序演算法時間複雜度及穩定性

常見排序演算法時間複雜度及穩定性

排序演算法 平均時間複雜度 最壞時間複雜度 穩定性
選擇排序 O(N²) O(N²) 不穩定
氣泡排序 O(N²) O(N²) 穩定
插入排序 O(N²) O(N²) 穩定
希爾排序 O(n^(1.3—2)) O(N²) 不穩定
堆排序 O(nlogn) O(nlogn) 不穩定
歸併排序 O(nlogn) O(nlogn) 穩定
快速排序 O(nlogn) O(N²) 不穩定
基數排序 O(N*M) O(N*M) 穩定

排序的穩定性:待排序的序列中有兩個元素相等,排序之後它們的先後順序不變。
具體程式碼在:排序程式碼