この記事では、PHP で実装される二分探索アルゴリズムの原理と、ループや再帰などの実装テクニックをサンプル形式で紹介します。 。
二分探索法では、配列が順序付けられた配列である必要があります
配列が増加する配列であると仮定すると、まず配列の中間位置を見つける必要があります。
1 つ。中間位置を知るには、開始位置と終了位置を知ってから、中間位置の値を取得してこの値と比較する必要があります。
2つ。中央の値が指定した値より大きい場合は、この時点で値が中央より前にあることを意味します。中央より前なので、変更する必要がある値は です。このとき、終了位置の値は「We're in the middle at this point」となるはずです。
3つ。一方、中間の値が与えた値より小さい場合は、与えられた値が中間の位置より後であることを意味します。このとき、後半の値は であるため、再度 2 つに分割する必要があります。中間値の後なので、変更する必要がある値は開始位置の値です。指定された値が見つかるまで、この時点の開始位置の値が中間位置になります。
4つ。または、中間値が最初の開始位置または終了位置と等しい場合 (この場合、指定された値が見つかりません)、コードを使用して実装しましょう~
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
関連する推奨事項:
Python二分探索を高速に実装するためのソート例の詳細説明
以上がPHPで実装された二分探索アルゴリズムの分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。