過去問解きまくり研究所 ホーム

平成24年度 春期 午前 問9

アルゴリズム

このときの平均比較回数を表す式

相異なる n 個のデータが昇順に整列された表がある。この表を m 個のデータごとのブロックに分割し,各ブロックの最後尾のデータだけを線形探索することによって,目的のデータの存在するブロックを探し出す。次に,当該ブロック内を線形探索して目的のデータを探し出す。このときの平均比較回数を表す式はどれか。ここで,m は十分に大きく,n は m の倍数とし,目的のデータは必ず表の中に存在するものとする。

答えと解説を見る

✓ これが正解イm/2+n/(2m)

解説

各段の平均は個数の半分で、その和になります。

探索が二段になっていますので、段ごとに平均比較回数を出して足します。線形探索の平均比較回数は、目的のものが必ず含まれているとき、調べる対象の個数の半分になります。一段目は各ブロックの最後尾だけを順に見ますから、調べる対象はブロックの個数で、これは全体の件数をブロックの大きさで割った数です。その半分が一段目の平均になります。二段目は見つけたブロックの中を順に見ますので、調べる対象はブロックの大きさそのもので、その半分が二段目の平均です。二つを足した式が求める答えです。具体的な数で確かめると、全体が一万件でブロックが百件なら、一段目も二段目も平均五十回で合計百回になり、式に当てはめた値と一致します。目的のデータが必ずあるという断りは、見つからない場合を考えなくてよいという意味です。

ほかの選択肢はなぜ違うのか

出典:平成24年度 春期 応用情報技術者試験 午前 問9

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)