package com.csdhsm.sort;
/**
* @Title: QuickSort.java
* @Package: com.csdhsm.sort
* @Description å¿«éæåº
* @author Han
* @date 2016-4-3 ä¸å11:37:02
* @version V1.0
*/
public class QuickSort {
/**
* å¿«éæåºéå½è°ç¨
* @Description
* @author Han
* @param arr
* @param low
* @param high
*/
public void sort(int[] arr,int low,int high){
if(low < high){
int pos = findPoss(arr,low,high);
sort(arr,low,pos-1);
sort(arr,pos+1,high);
}
}
/**
* @Description 寻æ¾åéçä½ç½®
* @author Han
* @param a
* @param low
* @param high
*/
public int findPoss(int arr[],int low,int high){
/**
* t为éç¹ï¼å·¦è¾¹é½æ¯å°äºtçæ°åï¼å³è¾¹é½æ¯å¤§äºtçæ°å
*/
int t = arr[low];
/**
* ä¸ç´è¦æ¾å°lowçäºhigh为æ¢
*/
while(low < high){
while(low < high && arr[high] >= t){
high--;
}
arr[low] = arr[high];
while(low