您的位置:首页 > 编程语言 > PHP开发

php 二分算法

2017-09-01 17:23 316 查看
//$arr是要查的数组,$low是最小值的下标,$top是最大值的下标,$target是要查询的值

function binaryRecursive(&$arr,$low,$top,$target){

    if($low<=$top)

    {

        $mid = ceil(($low+$top)/2);

        if($arr[$mid]==$target)

        {

            return $mid;

        }elseif($arr[$mid]<$target)

        {

            return binaryRecursive($arr,$mid+1,$top,$target);

        }else

        {

            return binaryRecursive($arr,$low,$mid-1,$target);

        }

    }else{

        return '不在里面';

    }

}

$arr = array(3,9,23,54,1111,11111111,55555555);

//sizeof($arr);
echo binaryRecursive($arr, 0, count($arr)-1,23);

ps:个人记录用,不喜勿喷
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 二分算法