平成27年度 III-1

科目: 専門科目 / 分野: 情報工学部門 / 年度: 平成27年度

III-1 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

データの個数が8倍に増加した場合の、二分探索の最大探索回数の変化として最も適切なものを選ぶ問題。二分探索の計算量はO(log n)で、8倍(2^3倍)になると、最大探索回数は3回増える。

解説

この問題で問われていること

二分探索の計算量がデータ数の対数に比例することを、具体的な倍率で確認する問題。

解き方

① 二分探索の最大回数 ≒ log₂n。データが2倍になるごとに1回増える
② 8倍 = 2³ → 3回増える(倍になるのではなく足し算で増える)。⑤の約8倍は線形探索の場合
③ ②

正解が正しい理由

二分探索は、探索範囲を1回ごとに半分にしていくので、最大探索回数は、およそlog2(n)(切上げ)回である。データの個数が8倍になると、log2(8n)=log2(n)+log2(8)=log2(n)+3となり、最大探索回数は3回増加する。したがって②が最も適切である。

各選択肢について

覚えるべきポイント

二分探索=O(log n)。データ数がk倍になると、最大探索回数は、log2(k)回だけ増える。線形探索=O(n)で、k倍になる。

キーワード: 二分探索、探索回数、計算量、O(log n)、アルゴリズム、対数、情報工学部門