首页 > 编程语言 > 详细

php纯原生实现数组二分法

时间:2016-08-03 06:41:00      阅读:270      评论:0      收藏:0      [点我收藏+]

代码如下


$arr = [1,3,5,7,9];
//$arr = range(1,10000);
var_dump(find($arr, 2));



function find(array $arr, $seach) { $left = 0; $right = count($arr) - 1; if($seach > $arr[$right]) { return $arr[0]; } while($left < $right) { $mod = (($left + $right +1) >> 1); echo $mod,‘<br >‘; if($mod == $right) { return $arr[$mod]; } if($arr[$mod] < $seach) { $left = $mod; } else if ($arr[$mod] > $seach) { $right = $mod; } else { return $arr[$mod]; } } return false; }

  

php纯原生实现数组二分法

原文:http://www.cnblogs.com/xiaocongjiejie/p/5731318.html

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