对于学校我必须实现中方哈希函数。我理解这个理论,但我不知道如何在平方键上使用位移算子。我在互联网上搜索了上面的代码实现,但到目前为止没有找到。问题陈述如下:
使用大小为20的数组T并插入以下值:{1,5,21,26,39,14,15,16,17,18,19,20,111,145,146}。
非常感谢您的帮助。我使用具有线性探测的除法散列函数成功地实现了这个问题。现在我必须使用中间方格哈希来做。
感谢。
答案 0 :(得分:2)
要获取数字的中间位,您可以执行以下操作:
(number >> 6) & 0xf;
>> 6
将左边的参数6位向左移位,得到底部4位的中间4位(简称)。 & 0xf;
然后屏蔽掉顶部位,只留下底部位。
((10 * 10 % 65536) >> 6) & 0xf == 1