Изменения

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

Сортировка Хана

443 байта добавлено, 23:24, 10 июня 2012
Нет описания правки
}}
Взяв <tex>s = 2logn</tex> мы получим хэш функцию <tex>h_{a}</tex> которая захэширует <tex>n</tex> чисел из <tex>U</tex> в таблицу размера <tex>O(n^2)</tex> без коллизий. Очевидно, что <tex>h_{a}(x)</tex> может быть посчитана для любого <tex>x</tex> за константное время. Если мы упакуем несколько чисел в один контейнер так, что они разделены несколькими битами нулей, мы спокойно сможем применить <tex>h_{a}</tex> ко всему контейнеру, а в результате все хэш значения для всех чисел в контейере были посчитаны. Заметим, что это возможно только потому, что в вычисление хэш знчения вовлечены только (mod<tex>2^b</tex> ) и (div<tex>2^{b - s}</tex>).  Такая хэш функция может быть найдена за <tex>О(n^3)</tex>. Следует отметить, что несмотря на размер таблицы <tex>O(n^2)</tex>, потребность в памяти не превышает <tex>O(n)</tex> потому, что хэштрование используется только для уменьшения количества бит в числе.
81
правка

Навигация