Considere el hashing doble de la forma
h(k,i)=(h 1 (k)+ih 2 (k)) mod m
Donde h 1 (k)=k mod m
h 2 (k )=1+(k mod n)
Donde n=m-1 y m=701
para k=123456, ¿cuál es la diferencia entre la primera y la segunda sonda en términos de ranuras?
(A) 255
(B) 256
(C) 257
(D) 258
Respuesta: (C)
Explicación: Dado que
=> h(k, i) = (h1(k)+ih2 (k)) mod m
=> Donde h1(k)=k mod m,
h2 (k)=1+(k mod n)
n=m-1,
m=701
k = 123456
Ahora,
=> h1(k) = 123456 módulo 701 = 80
=> h2(k) = 1 + (123456 módulo 700) = 1 + 256 = 257
1er sondeo: cuando i =1
=> h(k, i) = h1(k) + ih2(k)
=> h(k, 1) = h1(k) + h2(k) = 80 + 257 = 337
2ª sonda: cuando i =2
=> h(k,2) = h1(k) + 2*h2(k)
= 80 + 2*257
=> h(k,2) = 80 + 514 = 594
Entonces, la diferencia entre las dos primeras sondas = 594 – 337
= 257
=> La opción C es la respuesta.
Cuestionario de esta pregunta
Comente a continuación si encuentra algo incorrecto en la publicación anterior
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA