Bootstrap

每日一算法--快速排序

  1. 快速排序的效率为:O(N*logN)效率高。
  2. 快速排序是一种划分交换排序。它采用一种分治的策略。
  3. 基本思想:
  • 从数列中找出一个基数。
  • 分区过程,将比这个数大的放到这个数的右边,将比这个数小的或等于的放到基数的左边。
  • 在对左右区间重复第二步,直到各区间只有一个数。
  • 	public static void quickSort(int[] array,int l,int r){
    	
    		if(l<r){
    			while(i<j){
    				int i = l,j = r , x = array[l];
    				
    				while(i < j && x < array[j])
    					j--;
    				if(i < j ) 
    					array[l++] = array[j];
    				while(i < j && array[i] < x)
    				 i++;
    				if(i < j)
    					array[j] = array[i];
    			}
    			
    			quickSort(array,l,j-1);
    			quickSort(array,i+1,r);
    		
    		}
    	}
    


;