Изменения

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

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

68 байт добавлено, 23:58, 31 мая 2015
Реализация с удалением
'''Вставка'''
'''function''' add('''Item''' item)
x = h1(item.key)
y = h2(item.key)
'''for''' (i = 0; i < ..m; i++) '''if''' table[x] == '''null || ''' '''or''' deleted[x]
table[x] = item
deleted[x] = '''false'''
'''return'''
x = (x + y) '''mod ''' m table.resize() <span style="color:Green">//ошибка, требуется увеличить размер таблицы
'''Поиск'''
'''Item''' search('''Item''' key)
x = h1(key)
y = h2(key)
'''for''' (i = 0; i < ..m; i++) '''if''' table[x] != '''null''' '''if''' table[x].key == key && '''and''' !deleted[x]
'''return''' table[x]
'''else'''
'''return''' ''' null''' x = (x + y) '''mod ''' m '''return''' ''' null'''
'''Удаление'''
'''function''' remove('''Item''' key)
x = h1(key)
y = h2(key)
'''for''' (i = 0; i < ..m; i++) '''if''' table[x] != '''null'''
'''if''' table[x].key == key
deleted[x] = '''true'''
'''else'''
'''return'''
x = (x + y) '''mod ''' m
== Разрешение коллизий в Java 8==
106
правок

Навигация