调整哈希表的大小:使用素数与2的幂(对于数组大小)

时间:2017-09-25 20:24:19

标签: arrays hashmap hashtable

我在这个网站上调查了很多关于是否应该使用素数或2的幂为mod的问题。谢天谢地,我理解了这个想法

但是,我的情况有所不同。在调整哈希表的大小时,我找不到任何处理正确数组大小的问题。

我正在实现一个哈希表,随着存储密钥数量的变化,可能需要增长和缩小。我有一个哈希码函数,可以将键统一地哈希到正32位整数。表本身将使用一个近似大小为M的较小数组。因此,以下哪一项是哈希函数的最佳选择,该函数使哈希码产生0到P-1之间的值,其中P接近于M?

a)模P,其中P是最接近M

的素数

b)模P,其中P是最接近M

的2的幂

c)要么

d)都没有

我一直试图弄清楚这几个小时,但没有运气。

0 个答案:

没有答案