快速排序
代码实现
public <T extends Comparable<T>> void quickSort(T[] arr, int left, int right) {
if (left >= right) {
return;
}
int i = left;
int j = right;
T val = arr[left];
while (i < j) {
while (i < j && arr[j].compareTo(val) >= 0) {
j--;
}
while (i < j && arr[i].compareTo(val) <= 0) {
i++;
}
if (i < j) {
T temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
arr[left] = arr[i];
arr[i] = val;
quickSort(arr, left, i - 1);
quickSort(arr, j + 1, right);
}