Изменения

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

Перехеширование

1 байт добавлено, 03:21, 14 июня 2011
Нет описания правки
Найдем амортизационную стоимость добавления, после которого было сделано перехеширование, используя метод предоплаты. С момента последнего перехеширования было произведено не менее <tex>\frac{2}{3}n</tex> операций <tex>Add(x)</tex>, так как изначально в массиве находится <tex>\frac{2}{3}n</tex> элементов (или <tex>0</tex> в начале работы), а перехеширование происходит при наличии <tex>\frac{4}{3}n</tex> элементов.
Для проведения перехеширования необходимо произвести <tex>\frac{4}{3}n</tex> операций <tex>Add(x)</tex>, средняя стоимость которых составляет <tex>O(1)</tex> ''(Анализ открытого хеширования , см. Т.Корман, второе издание, стр. 288)'', потратить <tex>\frac{4}{3}n</tex> операций на проход хеш-таблицы, и <tex>\frac{4}{3}n</tex> операций на удаление предыдущей таблицы. В итоге, если мы увеличим стоимость каждой операции <tex>Add(x)</tex> на <tex>6</tex>, то есть на <tex>O(1)</tex>, операция перехеширования будет полностью предоплачена. Значит, амортизационная стоимость перехеширования при открытом типе хеш-таблицы равна <tex>O(1)</tex>.
===При закрытом типе===
Анонимный участник

Навигация