10進法で5桁の数a1a2a3a4a5を、ハッシュ法を用いて配列に格納したい。
ハッシュ関数をmod(a1 + a2 + a3 + a4 + a5, 13)とし、求めたハッシュ値に対応する位置の配列要素に格納する場合、54321は配列のどの位置に入るか。
ここで、mod(x , 13)の値は、x を13で割った余りとする。
ア | 1 |
イ | 2 |
ウ | 7 |
エ | 11 |
答え イ
【解説】
求めるのが54321の位置なので、a1=5、a2=4、a3=3、a4=2、a5=1について、ハッシュ値の計算を行うと
mod(a1 + a2 + a3 + a4 + a5, 13) = mod(5+4+3+2+1, 13) = mod(15, 13) = 2
(イ)になる。
【キーワード】
・ハッシュ関数