Изменения

Перейти к: навигация, поиск

Разрешение коллизий

1643 байта добавлено, 00:13, 16 мая 2011
Вроде всё
== Проверка наличия элемента в таблице==
 
Проверка осуществляется аналогично добавлению: мы проверяем ячейку <tex>i</tex> и другие, в соответствии с выбранной стратегией, пока не найдём искомый элемент или свободную ячейку.
 
== Проблемы закрытого хеширования ==
 
Проблем две - крайне нетривиальное удаление элемента из таблицы и образование кластеров.
Кластер - последовательность занятых клеток. Их наличие замедляет все операции с хеш-таблицей: при добавлении требуется перебирать всё больше элементов, при проверке тоже. Чем больше в таблице элементов, тем больше в ней кластеры и тем выше вероятность того, что добавляемый элемент попадёт в кластер.
 
Ещё при поиске элемента может получится так, что мы дойдём до конца таблицы. Обычно поиск продолжается, начиная с другого конца. Однако, если мы придём в ту ячейку, откуда начинался поиск, то добавить элемент в текущую таблицу будет невозможно и необходимо провести операцию перехеширования.
42
правки

Навигация