[理工] 一題資結題目 Hash
有一題資結題目如下:
Given input 4371,1323,6173,4199,4344,9679 and a hash function h(x) = xmod10.
Show the result using the Double Hashing with h2(x) = 7-(x mod 7)
我有問題的是9679這個位置,他原本應該放在hash table的第9格(9679%10=9),
但因與 4199 conflict,故做double hashing,h2(x) = 7-(9679%7) = 7-5 = 2
所以放在 (9+1*2)%10 = 1 的位置,但第1格又跟 4371 conflict,所以在做一次
(9+2*2)%10 = 3,第3格又與 1323 conflict,在做一次 (9+3*2)%10 = 5,所以最終
9679放在Hash Table第5格的位置。
請問這樣做有錯嗎?
因為解答9679給在第2格的位置 ~"~
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.224.133.235
推
01/22 11:45, , 1F
01/22 11:45, 1F
推
01/22 22:34, , 2F
01/22 22:34, 2F
推
01/22 22:39, , 3F
01/22 22:39, 3F
推
01/25 18:31, , 4F
01/25 18:31, 4F
推
01/25 22:05, , 5F
01/25 22:05, 5F