快速排序

package com.ryan.demo1;

import java.lang.reflect.Array;

import javax.security.auth.kerberos.KerberosKey;

public class QuickSort {

    public static void main(String[] args) {
        int[] a= {5,2,6,0,3,9,1,7,4,8};
Qsort(a, 0, 9);
for (int i : a) {
    System.out.println(a[i]);
}
    }
    public static int partition(int[] a,int low,int high) {
        int M=low+(high-low)/2;  //优化之一: 选取的基准值要是首尾中三个值的中位数,所以要对数组中的三个值进行比较
        if(a[low]>a[high])      //把首尾大的值换到最后面
        {swap(a,low,high);}
        if(a[M]>a[high])         //把中尾大的值换到最后面
        {swap(a,M,high);}
        if(a[low]length_insertsort) {
     while(lowlow)&&a[j]

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