定義
ソート済み配列で目的の値の位置を素早く見つけるアルゴリズムです。毎回探索範囲を半分に減らすため、非常に高速です。
主な特性
- ✓前提条件: 配列がソートされていること
- ✓各ステップで探索範囲が半分になる
- ✓100万個のデータでも約20回の比較で発見
- ✓追加メモリ不要(インプレース)
活用事例
こんな場面で使われます:
📖
辞書検索
分厚い辞書で単語を探す時、中間ページを開いて前後に移動するのと同じ原理
🎮
ゲームランキング検索
数百万人のゲーマーから特定のスコアのプレイヤーを素早く検索
📚
図書館の本探し
整理された図書館で請求記号で本を探すように
主な操作
主な操作:
探索
O(log n)配列から特定の値のインデックスを見つけます。ない場合は-1を返す。
計算量
時間計算量
最良
O(1)
平均
O(log n)
最悪
O(log n)
空間計算量
O(1)
可視化でより深く理解する
ステップごとのアニメーションとコード実行を通じて、アルゴリズムの動作を直接確認してください。
可視化を開始