基本情報技術者試験 |
2008年度 = 平成20年度・春期 |
午前 |
問14 |
キーx のハッシュ関数としてh (x )=mod(x ,97)を用いるとき、キー1094とハッシュ値が一致するものは、キー1~1000の中に幾つあるか。ここで、mod(x ,97)はx を97で割った余りを表す。
ウ
まず、1094のハッシュ値を計算します。1094を97で割ると商が11で剰余が27ですから、ハッシュ値は27です。
ハッシュ値が27となる最小値は27(97×0+27)であり、最大値は997(97×10+27)です。
- 97× 0+27 … 27
- 97× 1+27 … 124
- … 中略 …
- 97×10+27 … 997
したがって、商が0~10となる11個の数値のハッシュ値が27となります。