首页 > php教程 > php手册 > php 二分算法查找

php 二分算法查找

WBOY
发布: 2016-06-06 19:58:15
原创
973 人浏览过

? /** * 二分算法查找 * @param array $array 要查找的数组 * @param int $min_key 数组的最小下标 * @param int $max_key 数组的最大下标 * @param mixed $value 要查找的 * @return boolean */ function bin_search($array,$min_key,$max_key,$value){ if(


/**    

* 二分算法查找

* @param array $array 要查找的数组

* @param int $min_key 数组的最小下标

* @param int $max_key 数组的最大下标

* @param mixed $value 要查找的值

* @return boolean

*/

function bin_search($array,$min_key,$max_key,$value){

  if($min_key

      $key = intval(($min_key+$max_key)/2);

      if($array[$key] == $value){

          return true;

      }elseif($value

          return bin_search($array,$min_key,$key-1,$value);

      }else{

          return bin_search($array,$key+1,$max_key,$value);

      }

  }else{

      return false;

  }

}

//现在我们来测试一下这个函数

$array = array(1,22,23,45,58,10,12,2,4,6);

$value = 45;

$min_key = min(array_keys($array));

$max_key = max(array_keys($array));

if(bin_search($array,$min_key,$max_key,$value)){

  echo "Search Success!";

}else{

  echo "Search Faliure!";

}
?>

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板