Swiss Tables Design Notes
Abseil provides its own family of hash tables (colloquially known as “Swiss tables”) in place of std::unordered_set
and std::unordered_map
. These classes are:
absl::flat_hash_map
absl::flat_hash_set
absl::node_hash_map
absl::node_hash_set
This design note explains how these tables were implemented, the performance improvements our tables provide in certain cases, and why those might make you choose them over std::unordered_{set,map}
.