快速排序
程序员文章站
2022-03-24 13:07:29
...
比较简洁的快排,记录一下,个人觉得不懂得话可以以debug模式运行一下,很清楚。
public void quickSort(int[] array, int low, int high){
if(low > high){
return;
}
int i,j,index;
i = low;
j = high;
index = array[i]; // 用子表的第一个做基准
while(i < j){
while(i<j && array[j] >= index){
j--;
}
array[i] = array[j];
array[j] = index;
while(i<j && array[i] <= index ){
i++;
}
array[j] = array[i];
array[i] = index;
}
quickSort(array, low, i-1);
quickSort(array, i+1, high);
}
public void dealQuickSort(int[] array){
quickSort(array, 0, array.length-1);
}
public static void main(String[] args) {
int[] arr = {4,5,3,0,2,8,1,4,4}; //
QuickSort qs = new QuickSort();
qs.dealQuickSort(arr);
System.out.println(Arrays.toString(arr));
}
}
上一篇: wampserver怎么下载