package FirstDay;
public class QuickSort { public static void Sort(Integer[]array,int left,int right){ if(left>right) {//递归退出条件 return; } int tmp=array[left]; int i=left; int j=right; while(i<j) { //当i,j满足条件时,进行比较 while(array[j]>array[i]) { j--; } while(array[i]<array[j]) { i++; } if(i<j) { int p=array[i]; array[i]=array[j]; array[j]=p; i++; j--; } } int p=array[i]; array[i]=tmp; tmp=p; Sort(array, left, i-1); //递归调用,比较前半部分 Sort(array, i+1, right);//递归调用,比较后半部分 } public static void main(String[] args) { Integer []array={1,2,5,8,9,5,234,57}; Sort(array, 0, array.length-1); for(int i=0;i<array.length;i++) { System.out.println(array[i]); } }
}