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实现让页面只能被百度gogole蜘蛛访问的方法

普通用户与搜索引擎蜘蛛爬行的区别在于发送的user agent,看网站日志文件能发现百度蜘蛛名字包含Baiduspider, 而google的则是Googlebot, 这样我们可以通过判...

Json_decode 解析json字符串为NULL的解决方法(必看)

从APP端或从其他页面post,get过来的数据一般因为数组形式。因为数组形式不易传输,所以一般都会转json后再发送。本以为发送方json_encode(),接收方json_decod...

php防止恶意刷新与刷票的方法

本文实例讲述了php防止恶意刷新与刷票的方法。分享给大家供大家参考。具体实现方法如下: 一般来说,恶意刷新就是不停的去刷新提交页面,导致出现大量无效数据,下面我们来总结一下php 防止恶...

Eclipse的PHP插件PHPEclipse安装和使用

Eclipse的PHP插件PHPEclipse安装和使用

PHPEclipse是Eclipse的一个插件,提供了包括PHP语法分析、运行、调试等功能的集成开发环境。它基于Eclipse的插件机制,即插即用,配置和使用都非常方便。如果平时需要同时...

php计算给定日期所在周的开始日期和结束日期示例

本文实例讲述了php计算给定日期所在周的开始日期和结束日期。分享给大家供大家参考,具体如下: <?php /** * 取得给定日期所在周的开始日期和结束日期 * @...