今天做题的时候这个二分算法都没写出来,真惨。 再记下来看一遍。 [code type="php"] <?php $a=range(0,9546); $high=count($a) - 1; $mid=0; $low=0; $found=0; $m=456; while( ($low<=$high) && ($found==0)) { $mid=floor( ($low+$high) / 2 ); if($m<$a[$mid]) $high=$mid-1; elseif($m>$a[$mid]) $low=$mid+1; else { $found=1; $key=$mid; } $i++; } echo "共进行了{$i}次查找
"; echo "找到的下标是{$mid}
"; echo "找到标志位{$found}
"; ?> [/code]
转载于:https://www.cnblogs.com/qtchina/archive/2010/06/12/1757065.html