Я новичок в хэш -картах, и у меня есть задание завтра. Я все реализовал, и все сработало хорошо, за исключением случаев, когда я получаю столкновение. Я не могу понять идею линейного зондирования, я попытался реализовать ее на основе того, что я поняла, но программа перестала работать на размер таблицы
void hashEntry(string key, string value, entry HashTable[], int p)
{
key_de = key;
val_en = value;
for (int i = 0; i < sizeof(HashTable); i++)
{
HashTable[Hash(key, p) + i].key_de = value;
}
}
< /code>
Я думал, что, добавляя число каждый раз к хэш -функции, 2 ведра никогда не получат такой же хэш -индекс. Но это не сработало.
Подробнее здесь: https://stackoverflow.com/questions/593 ... obing-in-c
Как я могу реализовать линейное зондирование в C ++? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Не уверен, почему квадратичное зондирование не поможет разрешить коллизии при хешировании.
Anonymous » » в форуме C++ - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Сдвиг форманты на основе Teensy LPC (линейное прогнозирующее кодирование)
Anonymous » » в форуме C++ - 0 Ответы
- 20 Просмотры
-
Последнее сообщение Anonymous
-