0

好的,所以我知道哈希表的大小应该是最接近数据集大小的最大素数。所以如果你使用封闭哈希(Open Addressing),每个关键位置将对应1个数据。因此不可能将所有数据存储在哈希表中?那么散列数据的意义何在,什么时候会丢失散列表中的一些数据?

提前感谢您的任何澄清。

PS我知道这可以通过使用Open Hashing(分离链接)来解决,因为每个关键位置可以有超过1个数据。

4

1 回答 1

2

在这种情况下,您将使用数据集大小之后的下一个素数,以便您的哈希表可以保存所有数据点。

或者,选择小于最大可能数据集大小的素数的动机可能是当您提前知道在任何给定哈希表实例中仅使用稀疏数据点集的实际情况时

于 2013-09-21T13:15:50.610 回答