本文实例讲述了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 二分查找字符串,php实现的二分查找算法示例相关推荐

  1. c ++查找字符串_C ++类和对象| 查找输出程序| 套装4

    c ++查找字符串 Program 1: 程序1: #include <iostream> using namespace std; class Sample { int X; int* ...

  2. c ++查找字符串_C ++类和对象| 查找输出程序| 套装3

    c ++查找字符串 Program 1: 程序1: #include <iostream> using namespace std; class Sample { int X; publi ...

  3. c ++查找字符串_C ++类和对象| 查找输出程序| 套装5

    c ++查找字符串 Program 1: 程序1: #include <iostream> using namespace std; class Sample { int X; int* ...

  4. c ++查找字符串_C ++类和对象| 查找输出程序| 套装1

    c ++查找字符串 Program 1: 程序1: #include <iostream> using namespace std; class Sample { private int ...

  5. php语言查找字符串是否存在,PHP语言查找字符串是否存在的方法

    这里整理了PHP语言查找字符串是否存在的方法,如果你想了解PHP语言查找字符串是否存在的方法,可以查看以下PHP语言查找字符串是否存在的方法详解. PHP语言查找字符串是否存在的方法一:采用in_ar ...

  6. linux c 文件查找字符串,Linux基础之文件查找工具:locate、find

    引言: 在学习Linux中的文件查找时,突然联想到平时用的搜索引擎,在生活中我们想获取什么信息,在google等搜索引擎里面敲入就能列出符合我们条件的相关信息.如果我们不满意搜索结果可以进一步精确我们 ...

  7. php获取查找字符串下标,PHP利用stripos()查找字符串位置

    stripos() 函数返回字符串在另一个字符串中第一次出现的位置.它与strpos()函数的区别是, stripos() 函数不区分字符串大小写,而strpos()则是区分大小写的,因此请根据你的实 ...

  8. linux中vim如何查找字符串,[ubuntu] 在vim中查找指定字符串和指定文件

    推荐文章 更新源的方法 提前保存一下原来源 sudo cp sources.list sources.list.bak 换源命令: sudo gedit /etc/apt/sources.list 或 ...

  9. 【数据结构与算法】之深入解析“字符串相乘”的求解思路与算法示例

    一.题目要求 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 注意:不能使用任何内置的 BigInteger 库或直接 ...

最新文章

  1. 卸载破解的Navicat!操作所有的数据库靠它就够了!
  2. SAP HANA中创建与时间相关的数据及Time Attribute View(Gregorian)
  3. 【学习笔记】关于最大公约数(gcd)的定理
  4. java reactor框架_Java反应式框架Reactor中的Mono和Flux
  5. 在DataTable和DataView中查找指定记录
  6. 使用Notepad++作为Latex编辑器
  7. live555抓包实例
  8. TCP流量控制和滑动窗口
  9. 每日算法系列【LeetCode 424】替换后的最长重复字符
  10. 点云投影_激光点云变换到图像平面并保存成int16灰度图一帧激光点云+一张RGB图像得到彩色点云
  11. Mac OS X从10.7升级到Mountain Lion OS X10.8
  12. womic网络错误_WO Mic驱动程序下载
  13. python调用pyd_使用python pyd时出错
  14. 在一个循环中将许多字符串连接在一起时,使用 StringBuilder类可以提升性能
  15. 树莓派3B+ wifi 5G连接
  16. iOS编程------SQLite / 数据库
  17. ping不通外网 连不上外网
  18. python timer详解_python线程定时器Timer实现原理解析
  19. TheDAO被攻击事件考察报告
  20. ISkyShop B2B2C 商城系统V1.0正式版隆重发布

热门文章

  1. virtio-fs: A Shared File System for Virtual Machines
  2. zlib-1.2.11手册
  3. Docker Engine在CentOS上的安装
  4. java高级工程师认证考试_java高级工程师开放面试题集
  5. 关闭裁剪功能_SOLIDWORKS 2021 新增功能—3D CAD
  6. java webinf lib jar_java web项目中classes文件夹下的class和WEB-INF/lib中jar里的class文件加载顺序...
  7. mysql删除记录后id不连续_小水玩转Mysql---Mysql跟踪sql记录
  8. vsto mysql_16-Python MySQL
  9. OpenShift Security (2) - 安装 Red Hat Advanced Cluster Security(RHACS)
  10. OpenShift 之 用CodeReady Workspaces开发Quarkus云原生应用