基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [平成31年春午前] [平成31年春午後]

平成16年 春期 基本情報技術者 午前 問13
問13   ハッシュ値

 16 進数で表される9個のデータ 1A,35,3B,54,8E,A1,AF,B2,B3 を順に ハッシュ表に入れる。
ハッシュ値をハッシュ関数 f (データ) = mod (データ,8 ) で求めたとき, 最初に衝突が起こる(既に表にあるデータと等しいハッシュ値になる)のはどのデータか。 ここで,mod ( a b ) は a b で割った余りを表す。

ア 54     イ A1     ウ B2     エ B3
解答←クリックすると正解が表示されます

解説

9個の 16進数のデータを 10 進数に変える

最初の衝突とは、既に表にあるデータと等しいハッシュ値が出た時より

16進数の 1A ==> 10 進数の 26 よりハッシュ値=2
16進数の 35 ==> 10 進数の 53 よりハッシュ値=5
16進数の 3B ==> 10 進数の 59 よりハッシュ値=3
16進数の 54 ==> 10 進数の 84 よりハッシュ値=4
16進数の 8E ==> 10 進数の 142 よりハッシュ値=6
16進数の A1 ==> 10 進数の 161 よりハッシュ値=1
16進数の AF ==> 10 進数の 175 よりハッシュ値=7
16進数の B2 ==> 10 進数の 178 よりハッシュ値=2

 この時に既に出ているハッシュ値より、 B2 が最初の衝突だとわかる。

16進数の B3 ==> 10 進数の 179 よりハッシュ値=3


[←前の問題] [次の問題→] [問題一覧表] [分野別] [キーワード索引] [基本情報技術者試験TOP ]