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

yipeiwu_com7年前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程序设计有所帮助。

相关文章

ThinkPHP Where 条件中常用表达式示例(详解)

Where 条件表达式格式为: $map['字段名'] = array('表达式', '操作条件'); 其中 $map 是一个普通的数组变量,可以根据自己需求而命名。上述格式中...

PHP利用str_replace防注入的方法

PHP各种过滤字符函数复制代码 代码如下:   <?php    /**    * 安全过滤函数&n...

PHP编程实现计算抽奖概率算法完整实例

本文实例讲述了PHP编程实现计算抽奖概率算法。分享给大家供大家参考,具体如下: <?php //计算抽奖的概率 function get_rand($proArr)...

PHP5 字符串处理函数大全

addcslashes — 为字符串里面的部分字符添加反斜线转义字符 addslashes — 用指定的方式对字符串里面的字符进行转义 bin2hex — 将二进制数据转换成十六进制表示...

如何在smarty中增加类似foreach的功能自动加载数据

在smarty中使用自定义插件来加载数据(见:编写Smarty插件在模板中直接加载数据的详细介绍),在使用的时候还是感觉不够方便,灵机一动就想写成类似foreach那种标签:第一步:在S...