目次:
定義-バイナリ検索とはどういう意味ですか?
バイナリ検索アルゴリズムは、ソートされた配列に含まれる特定の値の位置を見つけるために使用されます。 分割統治の原理を使用すると、この検索アルゴリズムは非常に高速になりますが、データはソートされた形式である必要があるという点に注意してください。 配列の中央で検索を開始し、シーケンスの最初の下半分または上半分を下って作業することで機能します。 中央値がターゲット値よりも低い場合、つまり検索が高くなる必要があることを意味し、そうでない場合は、配列の降順部分を調べる必要があります。
バイナリ検索は、半区間検索または対数検索とも呼ばれます。
Techopediaはバイナリ検索について説明します
バイナリ検索は、順序付けられたアイテムのセットから特定のターゲット値を見つけるための迅速かつ効率的な方法です。 ソートされたリストの中央から開始することで、ターゲット値と比較した中央値に基づいてリストを昇順または降順で決定することにより、検索スペースを効果的に半分に削減できます。
たとえば、ターゲット値が8で、検索スペースが1〜11の場合:
- 中央値/中央値が見つかり、そこにポインターが設定されます。この場合は6です。
- ターゲットの8は6と比較されます。6は8より小さいため、ターゲットは上位半分になければなりません。
- ポインターは次の値(7)に移動し、ターゲットと比較されます。 小さいため、ポインターは次に高い値に移動します。
- ポインターは8になりました。これをターゲットと比較すると、完全に一致しているため、ターゲットが見つかりました。
バイナリ検索を使用すると、ターゲットを3つの値と比較するだけで済みました。 線形検索と比較すると、最初の値から開始して上に移動し、ターゲットを8つの値と比較する必要があります。 バイナリ検索は、順序付けされたデータのセットでのみ可能です。 データがランダムに配置されている場合、線形検索では常に結果が得られますが、バイナリ検索では無限ループに陥る可能性があります。
