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实现快速排序!尝试着自己动手实现一下吧!
免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。