Class ByteTimsortDescendingKernel

java.lang.Object
io.deephaven.engine.table.impl.sort.timsort.ByteTimsortDescendingKernel

public class ByteTimsortDescendingKernel extends Object
This implements a timsort kernel for Bytes.

Python and Wikipedia do a decent job of describing the algorithm.

  • Method Details

    • createContext

      public static <ATTR extends Any> ByteTimsortDescendingKernel.ByteSortKernelContext<ATTR> createContext(int size)
    • sort

      public static <ATTR extends Any> void sort(ByteTimsortDescendingKernel.ByteSortKernelContext<ATTR> context, WritableByteChunk<ATTR> valuesToSort)
      Sort the values in valuesToSort permuting the indexKeys chunk in the same way.

      The offsetsIn chunk is contains the offset of runs to sort in indexKeys; and the lengthsIn contains the length of the runs. This allows the kernel to be used for a secondary column sort, chaining it together with fewer runs sorted on each pass.