{A}
AlgoViz
首页
路线图
题单
教程
题目
可视化
错题本
进度
登录
加载中…
速度:
0.5x
1x
2x
4x
数组:
红色=pivot,紫色=i 指针,黄色=j 比较,绿色=已就位
64
0
34
1
25
2
12
3
22
4
11
5
90
6
8
7
快速排序:[64, 34, 25, 12, 22, 11, 90, 8],选末尾为基准(pivot)分区
步骤 1 / 43
初始化
快速排序 Quick Sort
复制代码
当前高亮行:
1
(初始化)
1
function
quickSort(arr, l, r) {
2
if
(l >= r)
return
;
3
const
pivot = arr[r];
4
let
i = l;
5
for
(
let
j = l; j < r; j++) {
6
if
(arr[j] < pivot) swap(arr, i++, j);
7
}
8
swap(arr, i, r);
9
quickSort(arr, l, i -
1
);
10
quickSort(arr, i +
1
, r);
11
}