php数组二分法查找
2013-05-05 11:00
246 查看
[php]
view plaincopy
<?php
//search函数 其中$array为数组,$k为要找的值,$low为查找范围的最小键值,$high为查找范围的最大键值
function search($array, $k, $low=0, $high=0)
{
if(count($array)!=0 and $high == 0) //判断是否为第一次调用
{
$high = count($array);
}
if($low <= $high) //如果还存在剩余的数组元素
{
$mid = intval(($low+$high)/2); //取$low和$high的中间值
if ($array[$mid] == $k) //如果找到则返回
{
return $mid;
}
elseif ($k < $array[$mid]) //如果没有找到,则继续查找
{
return search($array, $k, $low, $mid-1);
}
else
{
return search($array, $k, $mid+1, $high);
}
}
return -1;
}
$array = array(4,5,7,8,9,10); //测试search函数
echo search($array, 8); //调用search函数并输出查找结果
?>
相关文章推荐
- php 数组二分法查找函数代码
- PHP基于二分法实现数组查找功能示例【循环与递归算法】
- php 数组二分法查找函数
- php 数组二分法查找函数代码
- PHP写一个二分法查找一个值在数组中的位置
- php数组二分法查找
- php 二分法查找数组中某数值 案例分析
- 解析php二分法查找数组是否包含某一元素
- 解析php二分法查找数组是否包含某一元素
- 用php二分法查找一个值在数组中的位置
- php使用array_search函数实现数组查找的方法
- php 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等
- 二分法查找数组
- 设计一个模板类Sample,用于对一个有序数组采用二分法查找元素下标
- PHP查找数值数组中不重复最大和最小的10个数的方法
- 黄聪:PHP字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、切割成数组等)
- php 操作数组(合并,拆分,追加,查找,删除等)
- php数组排序(二分法)
- 【C语言】二分法实现数组查找
- PHP的数组中提高元素查找与元素去重的效率的技巧解析