java数组的快速排序
时间: 2024-05-23 08:08:57 浏览: 93
Java 快速排序
3星 · 编辑精心推荐
Java数组的快速排序是一种常用的排序算法,它基于分治思想,在平均情况下时间复杂度为O(nlogn)。快速排序的核心在于选定一个基准元素,通过一趟排序将待排数组分割成独立的两部分,其中一部分的所有元素均比基准元素小,另一部分的所有元素均比基准元素大。然后再按此方法对这两部分分别进行快速排序,整个过程递归进行,直到整个序列有序。
以下是Java数组快速排序的实现方式:
```
public static void quickSort(int[] arr, int left, int right){
if(left >= right){
return;
}
int pivot = arr[left];
int i = left, j = right;
while(i < j){
while(i < j && arr[j] >= pivot){
j--;
}
if(i < j){
arr[i++] = arr[j];
}
while(i < j && arr[i] <= pivot){
i++;
}
if(i < j){
arr[j--] = arr[i];
}
}
arr[i] = pivot;
quickSort(arr, left, i - 1);
quickSort(arr, i + 1, right);
}
```
阅读全文