java快速排序简单代码
时间: 2023-05-26 15:02:43 浏览: 82
下面是一个简单的Java实现,使用递归进行快速排序:
```
public static void quickSort(int[] array, int low, int high) {
if (low < high) {
int mid = partition(array, low, high); // 找到中间位置
quickSort(array, low, mid - 1); // 对左半部分进行排序
quickSort(array, mid + 1, high); // 对右半部分进行排序
}
}
public static int partition(int[] array, int low, int high) {
int pivot = array[low]; // 以第一个元素作为基准值
int i = low, j = high;
while (i < j) {
while (i < j && array[j] >= pivot) {
j--;
}
if (i < j) {
array[i] = array[j];
}
while (i < j && array[i] <= pivot) {
i++;
}
if (i < j) {
array[j] = array[i];
}
}
array[i] = pivot; // 将基准值归位
return i; // 返回中间位置
}
```
调用方式:
```
int[] array = {5, 2, 8, 4, 9, 1};
quickSort(array, 0, array.length - 1);
for (int num : array) {
System.out.print(num + " ");
}
```
输出结果为:
```
1 2 4 5 8 9
```