⬅ 返回選單

一、操作原理

快速排序法 (Quick Sort) 採用「分治法」策略。它會先在數列中挑選一個元素作為「基準值 (Pivot)」(本範例固定挑選區間最後一個元素)。

接著進行「分區 (Partition)」:將比基準值小的元素移到左邊,比基準值大的移到右邊。分區完成後,基準值就會落入它最終排序好的正確位置。最後,對基準值左右兩邊的子數列重複進行上述步驟(遞迴),直到所有元素皆排序完成。

二、複雜度分析

O(n log n)
最佳時間複雜度
(基準值剛好是中位數,完美對半切)
O(n log n)
平均時間複雜度
(實務上執行速度極快)
O(n2)
最壞時間複雜度
(數列已排序,且選到極端值為基準)

三、演算法特性

不穩定 ✗
穩定性 (Stability)
交換過程中,相等元素的相對位置可能會改變
O(log n)
空間複雜度 (Space Complexity)
原地排序,但遞迴呼叫需要消耗堆疊(Stack)空間

四、互動視覺化操作

700ms
準備就緒,請點擊「開始」或「單步」...
0
比較次數
0
交換次數
0
分區(Partition)次數
7
陣列大小 n

五、步驟記錄