快速排序的步骤:在数组中选定 pivot(分区点) 将小于 pivot 的数字移到 pivot 的左边将大于 pivot 的数字移到 pivot 的右边分别对左右子序列重复前面 3 步3 案例接下来我们通过一个例子来一起看下快速排序的过程...如果右指针指向的元素 >= pivot,则把右边的指针向左移动: , 1, 5, 2, 4 ↑ ↑如果右指针指向的元素 pivot,则将右指针指向的元素 2 填入坑中: 2, 1...如果左指针指向的元素 pivot,则左指针向右移动:2, 1, 5, , 4 ↑ ↑如果左指针指向的元素 > pivot,则左指针指向的元素填入坑中:2, 1, , 5, 4...a[right] = a[left]; } a[left] = pivot; return left;}5 性能分析(时间关系,这部分跳过)因为划分过程涉及交换操作,如果数组中有两个相同的元素...举个例子,比如 1, 2, 3, 4, 5,如果每次选择第 1 个元素作为 pivot,那么每次分区得到的两个区间都是不均等的。