平成27年度 秋期 応用情報技術者試験 午前 問5
キーが小文字のアルファベット1文字(a,b,…,zのいずれか)であるデータを,大きさが10のハッシュ表に格納する。ハッシュ関数として,アルファベットのASCIIコードを10進表記法で表したときの1の位の数を用いることにする。衝突が起こるキーの組合せはどれか。ASCIIコードでは,昇順に連続した2進数が,アルファベット順にコードとして割り当てられている。
キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:エ
ASCIIコードでは小文字の a が10進数で97であり,以降アルファベット順に1ずつ増えます。1の位が同じになるのは,アルファベット順で10の倍数だけ離れた文字どうしです。
-
ア: aとi
誤り。a=97,i=105 なので,ハッシュ値は7と5で異なります(aとiの差は8)。 -
イ: bとr
誤り。b=98,r=114 なので,ハッシュ値は8と4で異なります(差は16)。 -
ウ: cとl
誤り。c=99,l=108 なので,ハッシュ値は9と8で異なります(差は9)。 -
エ: dとx
正しい。d=100,x=120 なので,ハッシュ値はどちらも0になり衝突します(差は20で10の倍数)。
答え
エ: dとx
出典:平成27年度 秋期 応用情報技術者試験 午前 問5