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

平成30年度 秋期 午前 問8

基礎理論

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

〔例〕3 つの探索表(8 行 2 列の表が 3 枚)

  a  コード順に格納した探索表     b  コードの使用頻度順に      c  コードから一意に決まる
                                    格納した探索表               場所に格納した探索表

     コード    データ              コード    データ             コード    データ
     120380    ……                  120381    ……                (空き)
     120381    ……                  140140    ……                 120381    ……
     120520    ……                  120520    ……                (空き)
     140140    ……                  120380    ……                 120520    ……
    (空き)                       (空き)                      140140    ……
    (空き)                       (空き)                     (空き)
    (空き)                       (空き)                      120380    ……
    (空き)                       (空き)                     (空き)
答えと解説を見る

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

解説

並び方が決まれば使える探索法も1つに決まります。

三通りの並べ方をした探索表それぞれに、最も適した探索手法を当てはめる問いです。手掛かりは表の並び方だけで、並び方が決まれば使える手法は一つに決まります。一つ目はコードが昇順に詰めて並んでいます。真ん中と比べれば探す値がどちら側にあるか分かり、そのたびに残りを半分ずつ捨てられます。二つ目はコードの使用頻度の順に並んでいて、コードの大小はばらばらです。大小の手掛かりがないので真ん中と比べても何も捨てられず、先頭から順に見ていく線形探索になります。ただしよく使うコードほど前にあるので、平均の比較回数は小さくて済みます。三つ目は空き行が飛び飛びに残っています。詰めて置いていないということは、順番にも頻度にも意味がないということです。置き場所はコードから計算して決めていますから、ハッシュ表探索です。三つとも決まれば、組合せも一つに定まります。見分けの軸は、表の姿から逆に手法をたどることです。きっちり詰まって昇順なら半分ずつ捨てられ、詰まっているが順序に意味がなければ先頭から見るしかなく、空きが散らばっていれば計算で場所を出しています。平均の比較回数も、計算で決まるものがほぼ一回、半分ずつ捨てるものが対数の程度、先頭から見るものが件数の半分と、この順に並びます。

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

この問題の用語

出典:平成30年度 秋期 応用情報技術者試験 午前 問8

同じ用語が出る問題

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