Java实现快速排序(快排) 🚀
导读 🔥 快速排序是一种非常高效的排序算法,它采用了分治策略来把一个序列分为较小和较大的两个子序列,然后递归地排序两个子序列。接下来,让
🔥 快速排序是一种非常高效的排序算法,它采用了分治策略来把一个序列分为较小和较大的两个子序列,然后递归地排序两个子序列。接下来,让我们一起看看如何用Java实现快速排序吧!
💡 首先,我们需要定义一个`partition`方法,用于选择一个元素作为基准值,并将小于基准值的元素放到左边,大于基准值的元素放到右边。
👇 示例代码如下:
```java
public static int partition(int[] arr, int low, int high) {
int pivot = arr[high];
int i = (low - 1);
for (int j = low; j < high; j++) {
if (arr[j] < pivot) {
i++;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
int temp = arr[i + 1];
arr[i + 1] = arr[high];
arr[high] = temp;
return i + 1;
}
```
💡 接下来,我们定义`quickSort`方法,用于递归调用`partition`方法,直到数组完全有序。
👇 示例代码如下:
```java
public static void quickSort(int[] arr, int low, int high) {
if (low < high) {
int pi = partition(arr, low, high);
quickSort(arr, low, pi - 1);
quickSort(arr, pi + 1, high);
}
}
```
🎉 现在,你已经学会了如何使用Java实现快速排序!尝试着自己动手实现一下吧!
免责声明:本文由用户上传,如有侵权请联系删除!