PHP实现二分查找
2017-02-23 23:27
381 查看
循环
递归
注意:二分查找的前提是数组有序排列
参考:PHP实现二分查找(递归与非递归)
function binary(&$arr,$low,$top,$target){ while($low <= $top){ $mid = floor(($low+$top)/2); echo $mid."<br>"; if($arr[$mid]==$target){ return $arr[$mid]; }elseif($arr[$mid]<$target){ $low = $mid+1; }else{ $top = $mid-1; } } return -1; }
递归
function binaryRecursive(&$arr,$low,$top,$target){ if($low<=$top){ $mid = floor(($low+$top)/2); if($mid==$target){ return $arr[$mid]; }elseif($arr[$mid]<$target){ return binaryRecursive($arr,$mid+1,$top,$target); }else{ return binaryRecursive($arr,$low,$top-1,$target); } }else{ return -1; } }
注意:二分查找的前提是数组有序排列
参考:PHP实现二分查找(递归与非递归)
相关文章推荐
- PHP递归与非递归实现二分查找
- php二分查找二种实现示例
- php二分查找二种实现示例
- 用php实现简单的二分查找
- PHP实现文本快速查找 - 二分查找
- 基本查找算法 PHP 实现 保存 顺序查找,二分查找 分块查找
- PHP 实现二分查找
- php二分查找的两种实现方法
- 用PHP实现折半(二分)查找
- php实现二分查找
- 二分查找树的C++实现 Binary Search Tree(BST)
- 二分查找(BinSearch)的Javascript实现
- 冒泡排序和选择排序二分查找代码实现
- 二分查找之Java实现
- 【LintCode-457】经典二分查找问题(Java实现)
- 二分查找C语言实现
- 排序和搜索(二)——python实现二分查找
- php 二分查找
- python中实现二分查找,插入排序,归并排序,快速排序
- c++实现二分查找