题目

假设把整数关键码K散列到有N个槽的散列表,以下那些散列函数是好的散列函数?
(1)h(k)=k/n
(2)h(k)=1
(3)h(k)=k mod N
(4)h(k)=(k + Random(N )) mod N;Random(N)返回一个0到N-1的整数
每日一题 day19.001.png

答案

(3)h(k)=k mod N

如果使用 random(N)会造成hash后的数值不确定。