ホームページ >バックエンド開発 >PHPチュートリアル >PHP 配列バイナリ検索関数 code_PHP チュートリアル

PHP 配列バイナリ検索関数 code_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:40:59928ブラウズ

コードをコピーします コードは次のとおりです:

//search関数 $array は配列、$k は検索する値、$low は最小キー値です。検索範囲、$high は検索範囲
関数の最大キー値 search($array, $k, $low=0, $high=0)
{
if(count($array)!=0 and $high == 0) //最初の呼び出しであるかどうかを判断します
{
$high = count($array)
}
if($low {
$mid = intval(($low+$high)/2); //$low と $high の間の中間値を取得します
if ($array[$mid] == $k) //見つかった場合は、戻ります
{
return $mid
}
elseif ($ k < $array[$mid]) // 見つからない場合は検索を続行します
{
return search($array, $k, $low, $mid-1); }
else
{
return search($array, $k, $mid+1, $high);
}
}
return -1;
$array = array(4,5,7,8,9) ,10); //検索関数をテストする
echo search($array, 8); //検索関数を呼び出して検索結果を出力します

;

http://www.bkjia.com/PHPjc/321261.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/321261.html技術記事次のようにコードをコピーします: ?php //search 関数 $array は配列、$k は検索する値、$low は検索範囲の最小キー値、$high は検索の最大キー値です。範囲関数検索(...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。