插入排序與快速排序的核心講解

1.插入排序:兩個指針,i從第二個元素開始 往後遍歷,j從i-1開始往前遍歷

插入排序的平均時間複雜度是 O(n^2),數據量較少的時候,排序較合適。

2.快速排序 的核心有兩個注意點:1)遞歸時避免堆棧溢出, 可以計數法或者map法 2)分區函數的效率

分區避免最壞情況下的 空間複雜度 爲 O(n^2),就是分區點在最初或者最末尾,解決辦法:1)隨機數法 2)三木數法

這裏講最普通的取末尾的分區方法:

快排的核心就是這個圖了,分區,不過分區點取最後一個數字是可以優化的。這個就等待你去動手了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章