首页  >  文章  >  Java  >  Java快排

Java快排

巴扎黑
巴扎黑原创
2016-12-02 09:25:101257浏览

public static void quickSort(double[] array, int i, int j) {
if (j <= i)
return;
int pivotIndext = (i + j) / 2;
swap(array, pivotIndext, j);
int k = partition(array, i - 1, j, array[j]);
swap(array, j, k);
quickSort(array, i, k - 1);
quickSort(array, k, j);
}
public static int partition(double[] array, int left, int right, double pivot) {
do {
while (array[++left] < pivot)
;
while ((left < right) & (pivot < array[--right]))
;
swap(array, left, right);
} while (left < right);
return 0;
}
public static void swap(double[] data, int a, int b) {
double t = data[a];
data[a] = data[b];
data[b] = t;
}


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn