Два разных ключа могут хешироваться в один bucket — коллизию. Хеш-таблицы остаются O(1) в среднем благодаря разрешению коллизий и изменению размера до того, как bucket-ы переполнятся, контролируя коэффициент загрузки.
Разрешение коллизий
text
Separate chaining: each bucket holds a list
[3] -> ("cat",9) -> ("rat",2) # both hashed to 3
Open addressing: probe to the next free slot
hash=3 taken -> try 4 -> try 5 ... (linear probing)
