我是 Hash Maps 的新手,明天有一个作业要交。我实现了一切,一切都很好,除了当我遇到碰撞时。我不太理解线性探测的想法,我确实尝试根据我的理解来实现它,但是由于某种原因,程序停止了表大小 < 157 的工作。
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;
}
}
我认为通过每次向哈希函数添加一个数字,2 个桶永远不会得到相同的哈希索引。但这没有用。