@SuppressWarnings("WeakerAccess")
    public static void sort(double[] key, int start, int n, double[]... values) {
        quickSort(key, values, start, start + n, 8);
        insertionSort(key, values, start, start + n, 8);
    }
@ SuppressWarnings ( "WeakerAccess" ) public static void sort ( double [ ] key , int start , int n , double [ ] ... values ) { quickSort ( key , values , start , start + n , 8 ) ; insertionSort ( key , values , start , start + n , 8 ) ; }
Quick sort using an index array.  On return,
values[order[i]] is in order as i goes start..n
@param key    Values to sort on
@param start  The first element to sort
@param n      The number of values to sort
@param values The auxilliary values to sort.