Class ArrayTimSorter<T>


final class ArrayTimSorter<T> extends TimSorter
A TimSorter for object arrays.
  • Field Details

    • comparator

      private final Comparator<? super T> comparator
    • arr

      private final T[] arr
    • tmp

      private final T[] tmp
  • Constructor Details

    • ArrayTimSorter

      public ArrayTimSorter(T[] arr, Comparator<? super T> comparator, int maxTempSlots)
      Create a new ArrayTimSorter.
  • Method Details

    • compare

      protected int compare(int i, int j)
      Description copied from class: Sorter
      Compare entries found in slots i and j. The contract for the returned value is the same as Comparator.compare(Object, Object).
      Specified by:
      compare in class Sorter
    • swap

      protected void swap(int i, int j)
      Description copied from class: Sorter
      Swap values at slots i and j.
      Specified by:
      swap in class Sorter
    • copy

      protected void copy(int src, int dest)
      Description copied from class: TimSorter
      Copy data from slot src to slot dest.
      Specified by:
      copy in class TimSorter
    • save

      protected void save(int start, int len)
      Description copied from class: TimSorter
      Save all elements between slots i and i+len into the temporary storage.
      Specified by:
      save in class TimSorter
    • restore

      protected void restore(int src, int dest)
      Description copied from class: TimSorter
      Restore element j from the temporary storage into slot i.
      Specified by:
      restore in class TimSorter
    • compareSaved

      protected int compareSaved(int i, int j)
      Description copied from class: TimSorter
      Compare element i from the temporary storage with element j from the slice to sort, similarly to Sorter.compare(int, int).
      Specified by:
      compareSaved in class TimSorter