[算法总结]partition (quicksort)
Posted 冬日焰火
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[算法总结]partition (quicksort)相关的知识,希望对你有一定的参考价值。
private int partition(int[] nums, int lo, int hi) { if (lo >= hi) { return lo; } int i = lo; int j = hi + 1; int v = nums[lo]; while (true) { while (nums[++i] < v) if (i == hi) break; while (nums[--j] > v) if (j == lo) break; if (i >= j) { break; } int tmp = nums[i]; nums[i] = nums[j]; nums[j] = tmp; } nums[lo] = nums[j]; nums[j] = v; return j; }
lo和hi都是inclusive的。 返回的数组中,index小于j的数都小于等于j,index大于j的数都大于等于j
以上是关于[算法总结]partition (quicksort)的主要内容,如果未能解决你的问题,请参考以下文章