数组排序—快速排序。


项目描述:创建一个double类型数组,数组中元素个数由键盘输入,数据由键盘
输入。创建一个快速排序方法,对该数组中的数据进行排序,同时打印输出每次
排序的结果。同第6个题目。

/**
 * 快速排序
 */
public class QuickSort {
    public static double[] quickSort(double[] a, double low, double high){
        if (low < high){
            double middle = getMiddle(a,low,high);
            quickSort(a,0,middle-1);
            quickSort(a,middle+1,high);
        }
        return a;
    }

    public static double getMiddle(double[] a,double low, double high){
        double temp = a[low];
        while (low<high){
            while (low<high && a[high]>=temp){
                high--;
            }
            a[low]  = a[high];
            while (low<high && a[low]<=temp){
                low ++;
            }
            a[high] = a[low];
        }
        a[low] =temp;
        return low;
    }
}