基本情報技術者試験 基本情報技術者試験 令和元年度 科目A 修了認定試験 午前 問9: 16 進数で表される 9 個のデータ 1A、35、3B、54、8E、A1、AF、B2、B3 を順にハッシュ表に入れる。ハッシュ値をハッシュ関数 f(データ) =

基本情報技術者試験 令和元年度 科目A 修了認定試験
Q 99 / 80
16 進数で表される 9 個のデータ 1A、35、3B、54、8E、A1、AF、B2、B3 を順にに入れる。ハッシュ値を f(データ) = mod(データ, 8) で求めたとき、最初に衝突が起こるのはどのデータか。ここで、mod(a, b) は a を b で割った余りを表す。
この問の正解率:51.90%(1,104件)
この問題の本文・選択肢・正解・解説(展開)

問題本文

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

選択肢

  • .54
  • .A1
  • .B2
  • .B3

正解

. B2

解説

ハッシュ値 = データ mod 8。1A→2, 35→5, 3B→3, 54→4, 8E→6, A1→1, AF→7, B2→2(1A と衝突)。順番に格納していくと、B2 を入れる時点で 1A(値 2)と衝突する。

基本情報技術者試験 令和元年度 科目A 修了認定試験過去問一覧へ戻る・問9