Package rma.util

Class RMASort

java.lang.Object
rma.util.RMASort

public class RMASort extends Object
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     
    static class 
     
    static class 
     
    static class 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final boolean
     
    static final boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    main(String[] args)
    For Testing.
    static void
    mergeSort(Comparable[] keys, Object[] values)
    Performs a mergesort on the keys array, duplicates the sorting changes in the values array.
    static void
    mergeSort(List keys, List values)
    Performs a mergesort on the keys List, duplicates the sorting changes in the values List.
    static void
    mergeSort(Compare comparitor, Comparable[] keys, Object[] values)
     
    static void
    mergeSort(Compare comparitor, List keys, List values)
     
    static void
    multipleColumnSort(int[] columnsIndex, List rows, boolean ascending)
    Sorts a vector of vectors by a list of columns.
    protected static void
    multipleColumnSort0(int[] columnsIndex, int start, int stop, List rows, boolean ascending)
     
    static void
    quickSort(double[] keyArray, double[] objArray, boolean ascending)
     
    static void
    quickSort(double[] keyArray, int[] objArray, boolean ascending)
     
    static void
    quickSort(double[] keyArray, Object[] objArray)
    Quicksorts an array of Objects using the keys.
    static void
    quickSort(double[] keyArray, Object[] objArray, boolean ascending)
     
    static void
    quickSort(double[] keyArray, Object[] objArray, int[] objArray2, boolean ascending)
     
    static void
    quickSort(float[] keyArray, Object[] objArray, boolean ascending)
     
    static void
    quickSort(int[] keyArray, int[] objArray, boolean ascending)
     
    static void
    quickSort(int[] keyArray, Object[] objArray)
    Quicksorts an array of Objects using the keys.
    static void
    quickSort(int[] keyArray, Object[] objArray, boolean ascending)
     
    static void
    quickSort(int index, List rows)
    Quicksorts a List of Rows using an column index as a key.
    static void
    quickSort(int index, List rows, boolean ascending)
    QuickSort with with an index.
    static void
    quickSort(Class c, Object[] objArray)
    Quicksorts an array of Objects using toString().
    static void
    quickSort(Class c, Object[] objArray, boolean ascending)
    The base quickSort without keys.
    static void
    quickSort(Class c, Object[] objArray, boolean ascending, Compare compare)
     
    static void
    quickSort(Double[] dblArray)
    Quicksorts an array of Doubles.
    static void
    quickSort(Double[] dblArray, boolean ascending)
     
    static void
    quickSort(Object[] objArray)
    Quicksorts an array of Objects using toString().
    static void
    quickSort(Object[] objArray, boolean ascending)
     
    static void
    quickSort(Object[] objArray, boolean ascending, Compare compare)
     
    static void
    quickSort(Object[] keyArray, Object[] objArray)
    Quicksorts an array of Objects using the keys toString().
    static void
    quickSort(Object[] keyArray, Object[] objArray, boolean ascending)
     
    static void
    Quicksorts a List of Objects using toString().
    static void
    quickSort(List vec, boolean ascending)
     
    static void
    quickSort(List vec, boolean ascending, Compare compare)
     
    static void
    quickSort(List keys, List objVec)
     
    static void
    quickSort(List keys, List objVec, boolean ascending)
     
    protected static void
    quickSort0(int first, int last, double[] keyArray, double[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, double[] keyArray, int[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, double[] keyArray, Object[] objArray, int[] objArray2, RMASort.DoubleCompare dblCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, double[] keyArray, Object[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, float[] keyArray, Object[] objArray, RMASort.FloatCompare floatCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, int[] keyArray, int[] objArray, RMASort.IntegerCompare dblCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, int[] keyArray, Object[] objArray, RMASort.IntegerCompare intCompare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, int index, List rows, Compare compare, boolean ascending)
    The recursive quicksort routine for a List of rows and a key index.
    protected static void
    quickSort0(int first, int last, Object[] keyArray, Object[] objArray, Compare compare, boolean ascending)
    The recursive quicksort routine using key-value pairs.
    protected static void
    quickSort0(int first, int last, Object[] objArray, Compare compare, boolean ascending)
    The recursive quicksort routine.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • RMASort

      public RMASort()
  • Method Details

    • quickSort

      public static void quickSort(int index, List rows)
      Quicksorts a List of Rows using an column index as a key.
    • quickSort

      public static void quickSort(int index, List rows, boolean ascending)
      QuickSort with with an index.
    • quickSort

      public static void quickSort(List vec)
      Quicksorts a List of Objects using toString(). This quicksort is a little slower than using an array because it uses a temp array to work on.
    • quickSort

      public static void quickSort(List vec, boolean ascending)
    • quickSort

      public static void quickSort(List vec, boolean ascending, Compare compare)
    • quickSort

      public static void quickSort(Object[] objArray)
      Quicksorts an array of Objects using toString().
    • quickSort

      public static void quickSort(Object[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(Object[] objArray, boolean ascending, Compare compare)
    • quickSort

      public static void quickSort(Class c, Object[] objArray)
      Quicksorts an array of Objects using toString().
    • quickSort

      public static void quickSort(Class c, Object[] objArray, boolean ascending)
      The base quickSort without keys.
    • quickSort

      public static void quickSort(Class c, Object[] objArray, boolean ascending, Compare compare)
    • quickSort

      public static void quickSort(Double[] dblArray)
      Quicksorts an array of Doubles.
    • quickSort

      public static void quickSort(Double[] dblArray, boolean ascending)
    • multipleColumnSort

      public static void multipleColumnSort(int[] columnsIndex, List rows, boolean ascending)
      Sorts a vector of vectors by a list of columns. This sequentially sorts columns based on the array, narrowing the sort. It tries to emulate the way that Excel sorts multiple columns.
    • multipleColumnSort0

      protected static void multipleColumnSort0(int[] columnsIndex, int start, int stop, List rows, boolean ascending)
    • mergeSort

      public static void mergeSort(List keys, List values)
      Performs a mergesort on the keys List, duplicates the sorting changes in the values List.
      Parameters:
      keys - Objects in the keys List must implement Comparable.
      values -
    • mergeSort

      public static void mergeSort(Compare comparitor, List keys, List values)
    • mergeSort

      public static void mergeSort(Comparable[] keys, Object[] values)
      Performs a mergesort on the keys array, duplicates the sorting changes in the values array.
      Parameters:
      keys -
      values -
    • mergeSort

      public static void mergeSort(Compare comparitor, Comparable[] keys, Object[] values)
    • quickSort

      public static void quickSort(List keys, List objVec)
    • quickSort

      public static void quickSort(List keys, List objVec, boolean ascending)
    • quickSort

      public static void quickSort(Object[] keyArray, Object[] objArray)
      Quicksorts an array of Objects using the keys toString().
    • quickSort

      public static void quickSort(Object[] keyArray, Object[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(double[] keyArray, Object[] objArray)
      Quicksorts an array of Objects using the keys.
    • quickSort

      public static void quickSort(double[] keyArray, Object[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(double[] keyArray, Object[] objArray, int[] objArray2, boolean ascending)
    • quickSort

      public static void quickSort(double[] keyArray, double[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(double[] keyArray, int[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(int[] keyArray, int[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(int[] keyArray, Object[] objArray)
      Quicksorts an array of Objects using the keys.
    • quickSort

      public static void quickSort(int[] keyArray, Object[] objArray, boolean ascending)
    • quickSort

      public static void quickSort(float[] keyArray, Object[] objArray, boolean ascending)
    • quickSort0

      protected static void quickSort0(int first, int last, int index, List rows, Compare compare, boolean ascending)
      The recursive quicksort routine for a List of rows and a key index.
    • quickSort0

      protected static void quickSort0(int first, int last, Object[] objArray, Compare compare, boolean ascending)
      The recursive quicksort routine.
    • quickSort0

      protected static void quickSort0(int first, int last, double[] keyArray, Object[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for double Keys
    • quickSort0

      protected static void quickSort0(int first, int last, double[] keyArray, Object[] objArray, int[] objArray2, RMASort.DoubleCompare dblCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for double Keys
    • quickSort0

      protected static void quickSort0(int first, int last, double[] keyArray, double[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for double Keys
    • quickSort0

      protected static void quickSort0(int first, int last, double[] keyArray, int[] objArray, RMASort.DoubleCompare dblCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for double Keys
    • quickSort0

      protected static void quickSort0(int first, int last, int[] keyArray, int[] objArray, RMASort.IntegerCompare dblCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for double Keys
    • quickSort0

      protected static void quickSort0(int first, int last, int[] keyArray, Object[] objArray, RMASort.IntegerCompare intCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for int Keys
    • quickSort0

      protected static void quickSort0(int first, int last, float[] keyArray, Object[] objArray, RMASort.FloatCompare floatCompare, boolean ascending)
      The recursive quicksort routine using key-value pairs. -- for float Keys
    • quickSort0

      protected static void quickSort0(int first, int last, Object[] keyArray, Object[] objArray, Compare compare, boolean ascending)
      The recursive quicksort routine using key-value pairs.
    • main

      public static void main(String[] args)
      For Testing.