快速排序 java代码
时间: 2023-06-21 13:13:58 浏览: 71
java代码-使用java解决快速排序的源代码
下面是快速排序的Java代码实现:
```java
public class QuickSort {
public void quickSort(int[] nums, int start, int end) {
if (start >= end) {
return;
}
int pivotIndex = partition(nums, start, end);
quickSort(nums, start, pivotIndex - 1);
quickSort(nums, pivotIndex + 1, end);
}
private int partition(int[] nums, int start, int end) {
int pivot = nums[end];
int i = start;
for (int j = start; j < end; j++) {
if (nums[j] < pivot) {
swap(nums, i, j);
i++;
}
}
swap(nums, i, end);
return i;
}
private void swap(int[] nums, int i, int j) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
```
这里使用了递归的思想,先找到基准值(pivot),然后将小于基准值的数放在左边,大于基准值的数放在右边,最后递归对左右两个区间进行排序。
阅读全文