Изменения

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

Хеширование кукушки

1 байт убрано, 12:39, 23 апреля 2012
Алгоритм
Основная идея хеширования кукушки — использование двух хеш-функций вместо одной (далее <math>h_1(x)</math> и <math>h_2(x)</math>). Так же есть вариант алгоритма, в котором используются две хеш-таблицы, и первая хеш-функция указывает на ячейку из первой таблицы, а вторая — из второй. Рассмотрим алгоритмы функций add(x), delete(x) и exists(x).
==='''Add=== ''' - добавляет элемент с ключом x в хэш-таблицу
# Если одна из ячеек с индексами <math>h_1(x)</math> или <math>h_2(x)</math> свободна, кладем в нее элемент. Переходим к шагу 7.
# Помечаем ячейку, в которую только что добавили элемент, как занятую.
==='''Delete=== '''- удаляет элемент с ключом x из хэш-таблицы.
# Если в одной из них есть искомый элемент, просто помечаем эту ячейку как свободную.
==='''Exists=== ''' - проверяет на наличие элемента x в хэш-таблице
# Смотрим ячейки с индексами <math>h_1(x)</math> и <math>h_2(x)</math>.
394
правки

Навигация