快速排序

一次快速排序是对一个数组,以第一个数为基准,将比该数大的数移动到右边,比该数小的移动到左边而形成的。然后将该基数的左边和右边分别看成一个数组,重复排序。最后就可以实现。

public class QuickSort {
    public static void main(String[] args) {
        int [] array = {6,1,2,7,9,11,4,5,10,8};
        quickSort(array,0,array.length-1);
        for (int i:array){
            System.out.println(i);
        }

    }
    private static void quickSort(int [] array,int left,int right){
        int i,j,t;// i左哨兵,j右哨兵 t 临时变量(用于调换位置)
        if(left>right){// 不合法校验
            return ;
        }
        i = left;//初始左哨兵在第一个位置
        j = right;//初始右哨兵在最后一个位置
        int temp = array[left]; // 基准数初始为第一个数
        while (i=array[i]&&i

你可能感兴趣的:(快速排序)