快速排序源码java
时间: 2023-10-16 21:09:40 浏览: 42
快速排序是一种常用的排序算法,可以用于对数组进行排序。下面是一个简单的快速排序的Java源码实现:
```java
public class QuickSort {
public static void quickSort(int[] arr) {
if (arr == null || arr.length == 0) {
return;
}
quickSort(arr, 0, arr.length - 1);
}
private static void quickSort(int[] arr, int low, int high) {
if (low < high) {
int pivotIndex = partition(arr, low, high);
quickSort(arr, low, pivotIndex - 1);
quickSort(arr, pivotIndex + 1, high);
}
}
private static int partition(int[] arr, int low, int high) {
int pivot = arr >= pivot) {
high--;
}
arr = arr <= pivot) {
low++;
}
arr = arr = pivot;
return low;
}
public static void main(String[] args) {
int[] arr = {5, 2, 9, 1, 3, 7, 6};
quickSort(arr);
System.out.println("排序结果: ");
for (int num : arr) {
System.out.print(num + " ");
}
}
}
```
这段代码实现了快速排序算法。快速排序的基本思想是通过选择一个基准元素,将数组分为两部分,一部分大于基准元素,一部分小于基准元素,然后递归地对这两部分进行排序。在上面的代码中,`quickSort`方法是入口方法,它调用了另一个私有方法`quickSort`来进行真正的排序操作。`partition`方法用于划分数组,并返回基准元素的位置。
你可以将要排序的数组放在`main`方法中的`arr`数组中,然后运行这段代码,就可以得到排序后的结果。