写一个java快速排序
时间: 2023-03-09 15:59:51 浏览: 69
我可以给你一个java快速排序的示例:
public class QuickSort {
public static void main(String[] args) {
int[] array = { 10, 7, 8, 9, 1, 5 };
int start = 0;
int end = array.length - 1;
quickSort(array, start, end);
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
public static void quickSort(int[] array, int start, int end) {
if (start < end) {
int partitionIndex = partition(array, start, end);
quickSort(array, start, partitionIndex-1);
quickSort(array, partitionIndex+1, end);
}
}
public static int partition(int[] array, int start, int end) {
int pivot = array[end];
int i = (start-1);
for (int j = start; j < end; j++) {
if (array[j] <= pivot) {
i++;
int swapTemp = array[i];
array[i] = array[j];
array[j] = swapTemp;
}
}
int swapTemp = array[i+1];
array[i+1] = array[end];
array[end] = swapTemp;
return i+1;
}
}