Hash tables, collision strategies, and probabilistic filters — visualized bucket by bucket.
9 visualizations
Resolves hash collisions by storing colliding keys in a per-bucket linked list.
Resolves collisions by scanning forward one slot at a time until a free cell is found — simple and cache-friendly, but prone to clustering.
Resolves collisions with quadratically growing jumps (+1, +4, +9, …), breaking up the contiguous runs that plague linear probing.
Uses a second hash function as the step size, so different keys sharing a home slot follow completely different probe paths — no clustering.
Stores every key in one of two hash locations, evicting occupants and resizing on a cycle.
Equalizes probe lengths by letting farther-travelled keys displace richer residents.
Uses several hash-derived bits for space-efficient membership checks with possible false positives.
Combines lookup with recency order and evicts the least recently used key.
Evicts the least frequently used key, breaking equal-frequency ties by recency.