快速排序:运用到了递归的方法。
java代码实现:
import java.util.Arrays;
public class quickSort {
public static void main(String[] args) {
int[] arr = {5,7,8,9,1,4,3,2};
quickSort(arr,0,arr.length-1);
System.out.println(Arrays.toString(arr));
}
public static void quickSort(int[] arr,int left,int right){
if (left >= right){
return;
}
// 定义好基准数,也就是数组当中的一个数
int base = arr[left];
int i = left;
int j = right;
while (i!=j){
while (arr[j] >= base && i<j){
j--;
}
while (arr[i] <= base && i<j){
i++;
}
//交换
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
arr[left] = arr[i];
arr[i] = base;
quickSort(arr,left,i-1);
quickSort(arr,i+1,right);
}
}