A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

数组的查找算法
所谓查找算法,大体是要解决这样一个问题:找出数组中是否存在某个值
顺序查找
从头到尾一个个去判断,
二分查找算法
二分查找算法的前提:
针对的是已经排好序的索引数组;

二分法代码示例:
Functional  binary_search($arr , $s , $begin , $end){
$mid=floor(($begin+$end)/2);          //定位中间位置
$mid_value=$arr[$mid];                        //取得中间项值
If($mid_value==$s){
Return true;
}
Else  if($mid_value>$s){                //往左边找
If($begin>$mid-1){
Return  false;
}
$re =binary_search($arr,  $s,  $begin,  $mid-1);
}
Else{
If($mid+1>$end){
Return  false;
}
$re =binary_search($arr,  $s,  $mid+1  $end);
}
Return  $re;
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马