九大排序演算法
阿新 • • 發佈:2018-11-26
概述排序有內部排序和外部排序,內部排序是資料記錄在記憶體中進行排序,而外部排序是因排序的資料很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。
當n較大,則應採用時間複雜度為O(nlog2n)的排序方法:快速排序、堆排序或歸併排序序。
快速排序:是目前基於比較的內部排序中被認為是最好的方法,當待排序的關鍵字是隨機分佈時,快速排序的平均時間最短;
優點:
缺點:
優化:
優點:
缺點:
優化:
優點:
缺點:
優化:
最下值和最大值同時查詢
優點:
缺點:
優化:
優點:
缺點:
優化:
- 設定是否交換的標誌exchange
- 設定最後一次交換的位置
- 同時交換最大值和最小值
優點:
缺點:
優化:
- 三數取中法
- 當待排序序列的長度分割到一定大小後,使用插入排序
- 取隨機基數
優點:
缺點:
優化:
優點:
缺點:
優化:
參考博文:
https://www.cnblogs.com/openeim/p/3921645.html
https://www.cnblogs.com/zhaoshuai1215/p/3448154.html