当length = 2^n时,不同的hash值发生碰撞的概率比较小,这样就会使得数据在table数组中分布较均匀,查询速度也较快。
如果length是奇数,length - 1的二进制最后一位必然是0,而0与任何数进行&运算结果都是0,这样会增加hash碰撞,效率低。
本文作者:whitebear
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!