自然数をキーとするデータを、ハッシュ表を用いて管理する。
キーx のハッシュ関数h (x )を h (x )=x mod n
とすると、キーa とb が衝突する条件はどれか。
ここで、n はハッシュ表の大きさであり、x mod n はx をn で割った余りを表す。
ア
a +b がn の倍数
イ
a -b がn の倍数
ウ
n がa +b の倍数
エ
n がa -b の倍数
答え イ
【解説】
衝突が発生するのはキーについてハッシュ関数で求めた値が一致することなので a mod n =b mod n
が成り立つときである。
この式を変形すると
(a mod n )-(b mod n )=0
(a -b )mod n =0
になる。
この式は、a -b がn で割り切れることなので、a -b がn の倍数(イ)である。