package com.knock.sort;
import org.junit.Test;
/**@date 160803am
* 快速排序,效率最高的排序
* */
public class KaQuickSort {
@Test
public void test(){
int[] arr = {2,4,45,78,24,62,72,93,52};
sort(arr,0,arr.length-1);
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
public void sort(int[]arr ,int a ,int b){
if(a<b){
int i = a;
int j = b;
int temp = arr[a];
while(i<j){
while(i<j&&temp<arr[j]){
j--;
}
if(i<j){
arr[i]=arr[j];
i++;
}
while(i<j&&temp>arr[i]){
i++;
}
if(i<j){
arr[j] = arr[i];
j--;
}
}
arr[i]=temp;
//完成了temp左小右大
sort(arr,a,i-1);
sort(arr,i+1,b);
}
}
}
java.se.sort.1.快速
最新推荐文章于 2023-06-29 17:15:50 发布