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

平成25年度 春期 午前 問5

基礎理論

探索表の構成法を例とともに a〜c に示す。最も適した探索手法の組合せはどれか。ここで,探索表のコードの空欄は表の空きを示す。

〔探索表の構成法〕

a  コード順に格納した探索表
     コード          データ
     120380 / 120381 / 120520 / 140140 を上から昇順に詰めて格納(以下は空き)

b  コードの使用頻度順に格納した探索表
     120381 / 140140 / 120520 / 120380 を上から使用頻度の高い順に格納(以下は空き)

c  コードから一意に決まる場所に格納した探索表
     空き / 120381 / 空き / 120520 / 140140 / 空き / 120380 / 空き
     ⇒ 格納する行がコードから直に決まり、間に空きが残る
答えと解説を見る

✓ これが正解アa=2 分探索 / b=線形探索 / c=ハッシュ表探索

解説

並びの性質から使える探索手法がそれぞれ決まります。

三つの表は格納の仕方が違うだけですので、それぞれの並びから何が言えるかを順に考えます。昇順に詰めて並んでいる表なら、真ん中と比べて範囲を半分に絞り込めますから、2 分探索が最も速く当たります。使用頻度の順に並んだ表は、コードの大小と並びが無関係ですので、絞り込みの手がかりがありません。上から順に見ていく線形探索しか成り立ちません。コードから格納位置が直に決まり、間に空きが残る表は、ハッシュ表の姿そのものです。コードを関数に通して位置を求めますから、衝突を考えなければ一回で当たります。設問が表の空きにわざわざ触れているのが伏線で、空きが飛び飛びに残るのは詰めて格納しない方式の特徴です。三つを順に決めれば組合せは一つに定まります。並びが整っているかどうかを最初に見る、というのがこの型の解き方です。

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

この問題の用語

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

同じ用語が出る問題

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