応用情報技術者 アルゴリズムとプログラミング

二分探索の計算量はどれか?

1. O(log n) ✓ 正解
2. O(n)
3. O(n²)
4. O(n log n)

📝 解説

二分探索(バイナリサーチ)は「整列済みデータの中央値と比較して探索範囲を半分に絞る」を繰り返す高速探索アルゴリズムです。辞書で単語を調べるとき、まず真ん中のページを開いて「目的の単語は前か後か」で半分に絞り込む方法と全く同じです。毎回データが半分になるため、n件のデータを探すのに必要な最大比較回数はlog₂n回です。1000件なら約10回、100万件でも約20回で見つかります!これがO(log n)の威力です。前提として「データが昇順または降順にソートされていること」が必須です。誤答のO(n)は線形探索(先頭から順番に調べる)の計算量で、整列不要ですが遅い。O(n²)はバブルソートなど単純ソートの計算量、O(n log n)はクイックソートなど高速ソートの計算量です。「二分探索=O(log n)=ソート済みが前提」をしっかり覚えて、他の計算量との混同を避けましょう!

フラッシュカード形式で アルゴリズムとプログラミング を練習する

🎴 練習する

アルゴリズムとプログラミング の問題一覧・解説を見る →