平成22年秋期試験午前問題 問7

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
5けたのa1a2a3a4a5をハッシュ法を用いて配列に格納したい。ハッシュ関数をmod(a1+a2+a3+a4+a5,13)とし,求めたハッシュ値に対応する位置の配列要素に格納する場合,54321は次の配列のどの位置に入るか。ここで,mod(x,13)の値は,xを13で割った余りとする。
07.gif

  • 1
  • 2
  • 7
  • 11
正解 問題へ
分野:テクノロジ系
中分類:アルゴリズムとプログラミング
小分類:データ構造
ハッシュ法とは、探索するデータのキー値からデータの格納アドレスを直接計算する方法で、この計算の際に使われる関数をハッシュ関数といいます。

ハッシュ関数が mod(a1+a2+a3+a4+a5、13) なので、そのまま"54321"を当てはめます。mod()は、第1引数を第2引数で割った余りを求めるので、

 mod(5+4+3+2+1,13)=mod(15,13)=2

したがって、データ"54321"は配列の添字2の位置に格納されることになります。

この問題の出題歴


Pagetop