关于快速排序的几个小问题
import java.util.Arrays;
public class 快速排序 {
public static void main(String[] args) {
int[] arr={4,9,1,5,9,7,-5,-9,8,8};
sort(arr,0,9);
System.out.println(Arrays.toString(arr));
}
static void sort(int[] array,int low,int height) {
if(low>=height){
return;
}
int l=low;
int r=height;
int key =array[low];
while (l<r){
while (array[r]>=key &&l<r){
r--;
}
int t =array[l];
array[l]=array[r];
array[r]=t;
while (array[l]<=key&&l<r){
l++;
}
t =array[l];
array[l]=array[r];
array[r]=t;
}
//对基准左侧的集合操作
sort(array,low,l-1);
//对基准右侧的集合操作
sort(array,l+1,height);
}
}