首页 > Web开发 > 详细

php 实现简单的二分查找

时间:2017-03-25 11:24:52      阅读:150      评论:0      收藏:0      [点我收藏+]
<?php
 #二分查找
 function binarySearch($arr, $target) {
     $low = 0;
     $high = count($arr) - 1;

     while($low <= $high) {
         $mid = floor(($low + $high) / 2);
         #找到元素
        if($arr[$mid] == $target) return $mid;
        #中元素比目标大,查找左部
        if($arr[$mid] > $target) $high = $mid - 1;
        #重元素比目标小,查找右部
        if($arr[$mid] < $target) $low = $mid + 1;
    }

    #查找失败
    return false;
}
$data = array(1,2,6,3,4,5,7,8,9)
//一定要是一个有序的数组  正序倒序均可!!
sort($data);
var_dump(binarySearch($data,5))

 

php 实现简单的二分查找

原文:http://www.cnblogs.com/zhanzy/p/6615957.html

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