首页 > 编程语言 > 详细

php 算法(二分法)

时间:2018-05-29 16:01:06      阅读:185      评论:0      收藏:0      [点我收藏+]

  function demo($array,$low,$high,$k){

       if($low<=$high){//判断该数组是否存在

             $mid =  intval(($low+$high)/2 ); //如果上面条件成立,直接取其中间值

             if ($array[$mid] ==  $k){   //如果中间值就是最小值(最理想的情况第一次就取到最小值)
            return $mid;   //直接返回
        }elseif ( $k < $array[$mid]){   //如果小于,以中间值为基准,向前找(前半部分的1/2)
            return  demo($array, $low,  $mid-1, $k);   //递归调用
        }else{     //如果小于,以中间值为基准,向后找(后半部分的1/2)
            return  demo($array, $mid+ 1, $high, $k);  //递归调用 
        }  

}

return -1;

}

php 算法(二分法)

原文:https://www.cnblogs.com/yinfeng102030/p/9105421.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!