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

相关文章

通过JavaScript或PHP检测Android设备的代码

随着乔布斯的回归,iPad2的发布,看来移动端的开发话题越来越火热了。在此列出一些能够在iOS的最大竞争者——安卓(Android)系统的检测方法。 JavaScript判断方法 搜索u...

php动态读取数据清除最右边距的方法

php动态读取数据清除最右边距的方法

需求效果一行3栏: 场景模拟:同事给了我这么一段静态代码如下: <!DOCTYPE html> <html lang="en"> <head>...

Thinkphp结合AJAX长轮询实现PC与APP推送详解

前言 本文主要给大家介绍的关于Thinkphp结合AJAX长轮询实现PC与APP推送的相关内容,分享出来供大家参考学习,话不多说,来一起看看详细的介绍。 实现逻辑 某个操作(比如新建一条...

php实现的用户查询类实例

本文实例讲述了php实现的用户查询类。分享给大家供大家参考。具体实现方法如下: <?php class user { var $usertable; fun...

探讨PHP JSON中文乱码的解决方法详解

我们知道在使用Ajax技术与PHP后台交互时,中文乱码是常有的事,JSON作为与XML类似的数据交换格式,在PHP用来进行交互时也会出现中 文乱码的情况,解决PHP JSON中文乱码的方...