题目描述
快排的关键在于划分(partition操作),一次划分过程有很多实现的思路,请根据以下思路对a[1],a[2],...,a[n]实现一次partition并输出结果:
1. 选择a[1]为pivot(轴)
2. 从2和n两个位置开始,分别中间方向查找,将遇到的第一个大于等于/小于等于轴的元素进行交换,直至a[2]至a[n]被划分为L和R两部分,L中的元素小于等于pivot,R中的元素大于等于pivot。
3. 最后将a[1]交换至合适的位置。
快排的关键在于划分(partition操作),一次划分过程有很多实现的思路,请根据以下思路对a[1],a[2],...,a[n]实现一次partition并输出结果:
1. 选择a[1]为pivot(轴)
2. 从2和n两个位置开始,分别中间方向查找,将遇到的第一个大于等于/小于等于轴的元素进行交换,直至a[2]至a[n]被划分为L和R两部分,L中的元素小于等于pivot,R中的元素大于等于pivot。
3. 最后将a[1]交换至合适的位置。