帮我写一个java快速排序
时间: 2023-02-26 21:06:29 浏览: 76
好的,以下是 Java 快速排序的代码:
```
import java.util.Arrays;
public class QuickSort {
public static void sort(int[] array, int low, int high) {
if (array == null || array.length == 0)
return;
if (low >= high)
return;
int middle = low + (high - low) / 2;
int pivot = array[middle];
int i = low, j = high;
while (i <= j) {
while (array[i] < pivot) {
i++;
}
while (array[j] > pivot) {
j--;
}
if (i <= j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
i++;
j--;
}
}
if (low < j)
sort(array, low, j);
if (high > i)
sort(array, i, high);
}
public static void main(String[] args) {
int[] array = {9, 8, 7, 6, 5, 4, 3, 2, 1};
QuickSort.sort(array, 0, array.length - 1);
System.out.println(Arrays.toString(array));
}
}
```
该代码实现了快速排序算法,其中 `sort` 方法是快速排序的核心。它通过不断地分治,在每一次递归中找到正确的位置,最终将整个数组排序。