排序下面陣列的使用快速排序,快速排序樞軸
[6, 11, 4, 9, 8, 2, 5, 8, 13, 7]
樞軸應選擇爲第一和最後一個元素,即(a[0] + a[size - 1])/2 (rounded down)
的算術平均值。
顯示所有重要步驟,例如分區和對算法的遞歸調用。
我明白如何使用快速排序來排序數組,但是我不知道如何計算數據透視。
是對樞軸通過6 + 7 = 13
然後13/2 = 6.5
計算(向下舍入爲6
),從而所述樞轉是2
(即,第六元件)?
我知道左側顯示的元素少於樞軸,右側顯示大於樞軸的元素,分區將重複此步驟對子數組進行排序。
任何幫助將不勝感激。
謝謝老兄,非常感謝您的明確幫助。 – Paradox 2011-05-24 14:32:06