import org.apache.commons.lang.StringUtils;
public class QuickSort {
public static void main(String[] args) {
Integer[] values = { 72, 6, 57, 88, 60, 42, 83, 73, 48, 85 };
sort(values, 0, values.length - 1);
System.out.println("result is [" + StringUtils.join(values, ",") + "]");
}
private static void sort(Integer[] values, int left, int right) {
int max = right;
int pivot = values[left];
while (left < right) {
while (left < right) {
if (values[right] < pivot) {
values[left] = values[right];
left++;
break;
} else {
right--;
}
}
if (left < right) {
while (left < right) {
if (values[left] > pivot) {
values[right] = values[left];
right--;
break;
} else {
left++;
}
}
}
}
values[right] = pivot;
if (0 < left - 1)
sort(values, 0, left - 1);
if (right + 1 < max)
sort(values, right + 1, max);
}
}
简单的快速排序代码
最新推荐文章于 2023-09-09 23:48:59 发布