class MySort {

	public static void main(String[] args) {
		int[] arr = {44,44,2,32,54,22,88,77,99,11};
		quickSort(arr,0,arr.length-1);
        for(int x : arr) {
			System.out.print(x+" / ");
		}
	}

	public static void quickSort(int[] arr,int left,int right){
		if(left<right){
			int i=left,j=right,x=arr[left];   //x为基准数字
			while(i<j){
				while(i<j&&arr[j]>=x)  //从右向左找第一个小于x的数,如果小于x跳出while循环
					j--;
				if(i<j){               //执行if里的语句进行交换
					arr[i++]=arr[j];
				}
				while(i<j&&arr[i]<x)   //同上
					i++;
				if(i<j){
					arr[j--]=arr[i];
				}
			}
			arr[i]=x;
			quickSort(arr,left,i-1);   //递归调用,分而治之
			quickSort(arr,i+1,right);  //递归调用,分而治之
		}
	}
	
}