修了試験 2022-01-23実施分 基本情報技術者試験 問8
アルファベット3文字で構成されるキーがある。 次の式によってハッシュ値hを決めるとき,キー"SEP"と衝突するのはどれか。 ここで,a mod bは,aをbで割った余りを表す。 h=(キーの各アルファベットの順位の総和)mod 27 ※アルファベットの順位は,A=1,B=2,C=3,…,Z=26(アルファベット順)とする。
正答2
解説
正解は2です。 ハッシュ値が同じになることを衝突(シノニム)といいます。 各キーの文字の順位を合計し、27で割った余りを比べます。 【計算】 SEPは、S=19、E=5、P=16で、合計は40です。 40 mod 27=13なので、SEPのハッシュ値は13です。 APRは、1+16+18=35で、35 mod 27=8です。 FEBは、6+5+2=13で、13 mod 27=13です。 JANは、10+1+14=25で、25 mod 27=25です。 NOVは、14+15+22=51で、51 mod 27=24です。 【選択肢別解説】 1:× APRのハッシュ値は8です。 SEPの13と異なるので衝突しません。 2:○ FEBのハッシュ値は13です。 SEPと同じ値になるので衝突します。 3:× JANのハッシュ値は25です。 SEPの13と異なるので衝突しません。 4:× NOVのハッシュ値は24です。 SEPの13と異なるので衝突しません。 【ポイント】 異なるキーから同じハッシュ値が得られることを衝突と呼びます。 衝突が起きた場合は、チェイン法やオープンアドレス法で対処します。まとめて解く
修了試験 2022-01-23実施分を通しで解く(80問)→