本文主要和大家分享二分查找php实例,本文主要以代码的形式和大家分享,希望能帮助到大家。
比较好用的
/**
* 二分查找
**/
function binarySearch(Array $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;
}
$arr = array(1, 3, 5, 7, 9, 11);
$inx = binarySearch($arr, 7);
echo $inx."<hr/>"; // 索引位置。相关推荐:
立即学习“PHP免费学习笔记(深入)”;
以上就是php二分查找实例分享的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号