2分探索法
Binary Search
にぶんたんさくほう
整列済みのデータの列の中央の値と目的の値を比べ、探す範囲を半分ずつに絞り込んでいく探索方法。比較の回数は最大でもおよそlog₂n回、計算量はO(log n)と高速だが、データがあらかじめ整列されている必要がある。
Related
他の資格での定義
整列済みデータの中央値と目的の値を比較し、探索範囲を半分に絞り込みながら探索するアルゴリズム。データ量が多い場合でも高速に探索できるが、データが事前にソートされている必要がある。
整列済みデータの中央値と目的の値を比較し、探索範囲を半分に絞り込む操作を繰り返す探索アルゴリズム。計算量はO(log n)で効率的。データが事前に整列されている必要がある。
整列済みデータの中央要素と目標値を比較し、探索範囲を半分に絞り込む操作を繰り返す探索アルゴリズム。計算量はO(log n)。データが整列されている前提が必要で、配列に対して適用される。
整列済みのデータで、探索範囲の中央の値と目的の値を比較し、目的の値がある側の半分に範囲を絞ることを繰り返す探索の方法。1回の比較で範囲が半分になるので、データ数nに対する最大の比較回数は約log₂n回で、計算量はO(log n)である。データが整列している必要があり、追加・削除が多いデータでは整列を保つ費用がかかる。
Past Exams
過去問での出題
過去問で 4 回出題(基本情報技術者試験 3・ITパスポート試験 1)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
問題を解くための手順を、有限個の明確な操作の組合せとして定めたもの。同じ問題でも手順によって処理時間や必要な記憶領域が異なるため、計算量(オーダー記法)で効率を比べる。整列や探索などの代表的なアルゴリズムがあり、流れ図や擬似言語で表す。なお、アルゴリズム(解法)そのものは著作権法の保護の対象にならない。
アルゴリズムの実行に必要な処理の手間(基本操作の回数)を、入力データの大きさnの関数として表したもの。オーダ記法で表し、例えば線形探索はO(n)、2分探索はO(log n)になる。
アルゴリズムの実行に必要な記憶領域(メモリ)の大きさを、入力データの大きさnの関数として表したもの。オーダ記法で表し、作業用の配列を必要とするマージソートはO(n)になる。時間計算量と引換えになることが多い。
隣り合う要素を比較し、順序が逆なら交換する操作を、列の端から端まで繰り返して整列するアルゴリズム。仕組みは単純だが、計算量はO(n²)で、大量のデータには向かない。
未整列の部分から最小(または最大)の要素を選び、未整列部分の先頭と交換する操作を繰り返して整列するアルゴリズム。交換の回数は少ないが、比較の回数が多く、計算量はO(n²)である。
整列済みの部分に、未整列部分の先頭の要素を適切な位置に挿入する操作を繰り返して整列するアルゴリズム。計算量はO(n²)だが、ほぼ整列済みのデータに対しては高速に動作する。
