A persistent associative map: a trie keyed by chunks of a hash, where each interior node stores only the populated children plus a bitmap saying which slots are filled. The basis of immutable maps in Clojure, Scala, Haskell.
Key formulas
Lookup/insert/delete: O(log32n) (constant in practice — ≤7 steps for n<232)