Class DoubleScatterSet

All Implemented Interfaces:
DoubleCollection, DoubleContainer, DoubleLookupContainer, DoubleSet, Preallocable, Cloneable, Iterable<DoubleCursor>

@Generated(date="2023-09-14T00:00:00+0000", value="KTypeScatterSet.java") public class DoubleScatterSet extends DoubleHashSet
Same as DoubleHashSet but does not implement per-instance key mixing strategy and uses a simpler (faster) bit distribution function.

Note: read about important differences between hash and scatter sets.

See Also:
  • Constructor Details

    • DoubleScatterSet

      public DoubleScatterSet()
      New instance with sane defaults.
    • DoubleScatterSet

      public DoubleScatterSet(int expectedElements)
      New instance with sane defaults.
    • DoubleScatterSet

      public DoubleScatterSet(int expectedElements, double loadFactor)
      New instance with sane defaults.
  • Method Details

    • hashKey

      protected int hashKey(double key)
      Description copied from class: DoubleHashSet
      Returns a hash code for the given key. The default implementation mixes the hash of the key with DoubleHashSet.keyMixer to differentiate hash order of keys between hash containers. Helps alleviate problems resulting from linear conflict resolution in open addressing. The output from this function should evenly distribute keys across the entire integer range.
      Overrides:
      hashKey in class DoubleHashSet
    • from

      public static DoubleScatterSet from(double... elements)
      Create a set from a variable number of arguments or an array of double. The elements are copied from the argument to the internal buffer.