昨天我們寫過了快速排序,不過其實可以對陣列或 List 直接呼叫 Sort
方法。在 .NET Framework 4.5 以前該方法使用快速排序,.NET Framework 4.5 以後 (至後來的 .NET) 皆使用 Introspective Sort(Introsort, 或稱內省排序),速度也比一般的泡沫排序快很多 ~
Introsort 會依據條件使用 Insertion Sort (插入排序)、Heapsort (堆積排序) 或 Quicksort (快速排序),以在最壞的狀況下,仍保持 O(NlogN) 的時間複雜度。接下來介紹相關的排序方式:
Insertion sort (插入排序法). Insertion sort… - by Oliver Liao - Medium
referencesource/mscorlib/system/array.cs at master · microsoft/referencesource · GitHub