修了試験 2024-01-28実施分 基本情報技術者試験 問6
アルファベット3文字で構成されるキーがある。 次の式によってハッシュ値hを決めるとき,キー“SEP”と衝突するのはどれか。 ここで,a mod bは,aをbで割った余りを表す。 h=(キーの各アルファベットの順位の総和)mod 27 アルファベットの順位:A|1,B|2,C|3,D|4,E|5,F|6,G|7,H|8,I|9,J|10,K|11,L|12,M|13,N|14,O|15,P|16,Q|17,R|18,S|19,T|20,U|21,V|22,W|23,X|24,Y|25,Z|26
正答2
解説
正解は2です。 与えられたハッシュ関数で各キーのハッシュ値を計算し、“SEP”と同じ値になるもの(衝突)を探す問題です。 各アルファベットの順位を足し、27で割った余りを求めます。 【計算】 SEPは、S=19、E=5、P=16なので、和は19+5+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のハッシュ値13と一致します。 異なるキーが同じハッシュ値になるので衝突します。 3:× JANのハッシュ値は25です。 SEPの13と異なるので衝突しません。 4:× NOVのハッシュ値は24です。 SEPの13と異なるので衝突しません。 【ポイント】 異なるキーから同じハッシュ値が得られることを衝突(コリジョン)といいます。 衝突したキーどうしをシノニム(同義語)と呼びます。 mod の計算は、和が除数より小さければその値がそのまま余りになる点に注意しましょう。まとめて解く
修了試験 2024-01-28実施分を通しで解く(60問)→