Изменения

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

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

123 байта добавлено, 01:49, 1 июня 2015
Разрешение коллизий с помощью цепочек
Каждая ячейка <tex>i</tex> массива <tex>H</tex> содержит указатель на начало [[Список|списка]] всех элементов, хеш-код которых равен <tex>i</tex>, либо указывает на их отсутствие. Коллизии приводят к тому, что появляются списки размером больше одного элемента.
ВремяВ зависимости от того нужна ли нам уникальность значений операции вставки у нас будет работать за разное время. Если не важна, необходимое для то мы используем список, время вставки в наихудшем который будет в худшем случае равно равна <tex>O(1)</tex>. Это операция выполняет быстро, так как считается, что вставляемый элемент отсутствует в таблице, но если потребуется, то перед вставкой Иначе мы можем выполнить поиск этого реализуем Set. В таком случае вставка элемента.в худшем случае будет выполнена за <tex>O(n)</tex>
Время работы поиска в наихудшем случае пропорционально длине списка, а если все <tex>n</tex> ключей захешировались в одну и ту же ячейку (создав список длиной <tex>n</tex>) время поиска будет равно <tex>\Theta(n)</tex> плюс время вычисления хеш-функции, что ничуть не лучше, чем использование связного списка для хранения всех <tex>n</tex> элементов.
106
правок

Навигация