PHP二分查找
2009年12月6日
没有评论
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <?php function bin_sch($array, $low, $high, $k){ if ($low <= $high){ $mid = intval(($low+$high)/2); if ($array[$mid] == $k){ return true; }elseif ($k < $array[$mid]){ return bin_sch($array, $low, $mid-1, $k); }else{ return bin_sch($array, $mid+1, $high, $k); } } return false; } $array=array(3,5,1,8,2,10); $low=min(3,5,1,8,2,10); $high=max(3,5,1,8,2,10); sort($array); // 为数组排序 $k=5; if(bin_sch($array,$low,$high,$k)){ echo "查找成功"; }else{ echo "查找失败"; } ?> |
Recent Comments