nfx-containers 0.6.0
Modern C++20 header-only library providing high-performance hash containers with Robin Hood and perfect hashing
Loading...
Searching...
No Matches
PerfectHashMap.h File Reference

Perfect hash map using displacement-based perfect hashing. More...

#include <nfx/Hashing.h>
#include <cstdint>
#include <cstddef>
#include <functional>
#include <iterator>
#include <optional>
#include <string>
#include <string_view>
#include <type_traits>
#include <vector>
#include "nfx/detail/containers/PerfectHashMap.inl"
Include dependency graph for PerfectHashMap.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  nfx::containers::PerfectHashMap< TKey, TValue, HashType, Seed, Hasher, KeyEqual >
 Perfect hash map using displacement-based perfect hashing for immutable datasets. More...
class  nfx::containers::PerfectHashMap< TKey, TValue, HashType, Seed, Hasher, KeyEqual >::Iterator
 Const forward iterator for PerfectHashMap. More...

Detailed Description

Perfect hash map using displacement-based perfect hashing.

Provides O(1) guaranteed lookups for immutable datasets with zero collision overhead. Uses a displacement-based algorithm with seed mixing to achieve perfect hashing.

Algorithm inspired by DNV Vista SDK's ChdDictionary implementation: https://github.com/dnv-opensource/vista-sdk (MIT License)

Definition in file PerfectHashMap.h.