All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.carrotsearch.hppc.LongDoubleScatterMap Maven / Gradle / Ivy

The newest version!
  
package com.carrotsearch.hppc;

import static com.carrotsearch.hppc.Containers.*;
import static com.carrotsearch.hppc.HashContainers.*;

/**
 * Same as {@link LongDoubleHashMap} 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.

*/ @com.carrotsearch.hppc.Generated( date = "2018-05-21T12:24:06+0200", value = "KTypeVTypeScatterMap.java") public class LongDoubleScatterMap extends LongDoubleHashMap { /** * New instance with sane defaults. */ public LongDoubleScatterMap() { this(DEFAULT_EXPECTED_ELEMENTS); } /** * New instance with sane defaults. */ public LongDoubleScatterMap(int expectedElements) { this(expectedElements, DEFAULT_LOAD_FACTOR); } /** * New instance with sane defaults. */ @SuppressWarnings("deprecation") public LongDoubleScatterMap(int expectedElements, double loadFactor) { super(expectedElements, loadFactor, HashOrderMixing.none()); } protected int hashKey(long key) { return BitMixer.mixPhi(key); } /** * Creates a hash map from two index-aligned arrays of key-value pairs. */ public static LongDoubleScatterMap from(long[] keys, double[] values) { if (keys.length != values.length) { throw new IllegalArgumentException("Arrays of keys and values must have an identical length."); } LongDoubleScatterMap map = new LongDoubleScatterMap(keys.length); for (int i = 0; i < keys.length; i++) { map.put(keys[i], values[i]); } return map; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy