宁波网站建设咨询:宁波网站建设
13780026116 宁波网站制作
网站公告
PHP技术
技术交流
网络推广
网站建设常见问答
殷雯动态
你的位置:首页> 新闻/观点 > PHP技术>php中使用二分法查找某个值
PHP技术
php中使用二分法查找某个值

php中使用二分法查找某个值

   经常在QQ的PHP技术群里看到有人讨论PHP面试的话题,PHP的二分法出现频率很高,今天我们来说说PHP二分法的实现例子

已知一个数组里包含N个数字,使用二分法查出该数据

//声明一个数组

$data = [2,3,4,5];

//获取数组长度

$len = count($data)-1;

2.开始实现代码

 

 

/**

 * @param $start 开始位置

 * @param $len 数组长度

 * @param $data 要查询的数组

 * @param $value 要查询的值

 * @return bool|float 成功返回查询到的值,否则返回false

 */

function search($start, $len, $data,$search)

{

    while($start <= $len )

    {

        $mid = floor(($start + $len)/2);

        if($data[$mid] == $search){

            return $mid;

        }elseif ($data[$mid] < $search){

            $start = $mid+1;

        }else{

            $len = $mid-1;

        }

    }

    return false;

}

3.调用方法查找值为5的

echo search(0, $len, $data,5);

输出结果为:3


点击:  1643    时间: 2017-08-10
上一条: 相关知识
下一条: thinkphp中volist的多重循环,标签嵌套
 
 
快速通道: 关于我们    网站建设    主机域名    付款方式    我的声明
  
联系我们
手机扫描QQ
网站建设咨询:
咨询热线:
宁波殷雯网站建设工作室
地 址: 浙江省宁波市江东区
电 话: 13780026116 
邮 箱:
waichun@qq.com
宁波网站建设
宁波网站制作
13780026116
宁波殷雯网站建设工作室 版权所有   浙ICP备16030041号-1