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

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

Go to download

High Performance Primitive Collections: data structures (maps, sets, lists, stacks, queues) generated for combinations of object and primitive types to conserve JVM memory and speed up execution.

There is a newer version: 0.10.0
Show newest version
  
package com.carrotsearch.hppc;

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

/**
 * Same as {@link LongShortHashMap} 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 LongShortScatterMap extends LongShortHashMap { /** * New instance with sane defaults. */ public LongShortScatterMap() { this(DEFAULT_EXPECTED_ELEMENTS); } /** * New instance with sane defaults. */ public LongShortScatterMap(int expectedElements) { this(expectedElements, DEFAULT_LOAD_FACTOR); } /** * New instance with sane defaults. */ @SuppressWarnings("deprecation") public LongShortScatterMap(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 LongShortScatterMap from(long[] keys, short[] values) { if (keys.length != values.length) { throw new IllegalArgumentException("Arrays of keys and values must have an identical length."); } LongShortScatterMap map = new LongShortScatterMap(keys.length); for (int i = 0; i < keys.length; i++) { map.put(keys[i], values[i]); } return map; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy