import java.lang.reflect.Array;
import java.util.Arrays;
public class QuickSort {
public static void main(String[] args) {
int arr[] ={-9,78,0,23,-567,70,78,0,23,-567,70,5,96,76,132,451,-592,-8,-32};
quickSort(arr,0,arr.length-1);
System.out.println("arr="+ Arrays.toString(arr));
}
public static void quickSort(int[] arr,int left,int right){
int l = left;
int r = right;
int pivot=arr[(left+right)/2];
int temp;
while(l<r){
while(arr[l]<pivot){
l++;
}
while(arr[r]>pivot){
r--;
}
if(l>=r){
break;
}
temp =arr[l];
arr[l]=arr[r];
arr[r]=temp;
if (arr[l]==pivot){
r--;
}
if (arr[r]==pivot){
l++;
}
}
if (l==r){
l++;
r--;
}
if (left<r){
quickSort(arr,left,r);
}
if (l<right){
quickSort(arr,l,right);
}
}
}
Java快速排序代码
最新推荐文章于 2024-07-17 10:35:12 发布