1. 程式人生 > >資料結構(十五)排序

資料結構(十五)排序

排序演算法

0. 前言

本來準備自己寫,無意間看到一位大佬的博文…大家還是移步吧
推薦一套自己開發的演算法演示工具

1. 總結

排序方法 平均時間複雜度 最壞時間複雜度 額外空間複雜度 穩定性
簡單選擇排序 O( N 2
N^2
)
O( N 2 N^2 ) O( 1
1
)
不穩定
氣泡排序 O( N 2 N^2
)
O( N 2 N^2 ) O( 1 1 ) 穩定
直接插入排序 O( N 2 N^2 ) O( N 2 N^2 ) O( 1 1 ) 穩定
希爾排序 O( N d N^d ) O( N 2 N^2 ) O( 1 1 ) 不穩定
堆排序 O( N l o g N NlogN ) O( N l o g N NlogN ) O( 1 1 ) 不穩定
快速排序 O( N l o g N NlogN ) O( N 2 N^2 ) O( l o g N logN ) 不穩定
歸併排序 O( N l o g N NlogN ) O( N l o g N NlogN ) O(N) 穩定
基數排序 O(P(N+B)) O(P(N+B)) O(N+B) 穩定

2. 各種排序演算法比較

《資料結構》09-排序1 排序