php实现的二分查找算法示例

yipeiwu_com6年前PHP代码库

本文实例讲述了php实现的二分查找算法。分享给大家供大家参考,具体如下:

<?php
$arr = array(4,58,11,34,88,45,32,54,63,78);
function binary($arr,$bnum)
{
 if(is_array($arr) && count($arr) > 0)
 {
 sort($arr);
 $start = 0;
 $end = count($arr)-1;
 $mid = -1;
 while($start <= $end)
 {
  $mid = floor( ($start+$end)/2 );
  if($arr[$mid] == $bnum)
  {
  return $arr[$mid];
  }else if($arr[$mid] < $bnum)
  {
  $start = $mid +1;
  }else if($arr[$mid] > $bnum)
  {
  $end = $mid - 1;
  }
 }
 return -1;
 }
}
$mm = binary($arr,32);
print_r($mm);//输出32
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP实时显示输出

//实时显示输出 ob_end_flush();//关闭缓存 //echo str_repeat(" ",256); //ie下 需要先发送256个字节 set_time_limit(0...

php实现无限级分类(递归方法)

php实现无限级分类(递归方法)

相信很多学php的很多小伙伴都会尝试做一个网上商城作为提升自己技术的一种途径。各种对商品分类,商品名之类的操作应该是得心应手,那么就可以尝试下无限级分类列表的制作了。 到网上一搜php无...

解析php下载远程图片函数 可伪造来路

gurl 要下载的图片地址$rfurl 来路。如果目标图像做了防盗链设置,可以绕过。$filename 下载图片保存的文件名,相对路径,不要用realpath$gcookie 调整coo...

PHP中替换键名的简易方法示例详解

YII框架中封装好了的数据库操作函数,默认输出的时候,将数据库字段名作为数组的键名进行输出,但是有些时候带有键名的数据不能够满足未知情况下的操作,譬如:数据库数据导出为EXCEL等比较非...

php中的静态变量的基本用法

静态变量只存在于函数作用域内,静态变量只存活在栈中。一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会。下次再调用这个函数的时候,该变量的值会保留下来。 静态的变量的基...