PHP实现的二分查找法

发布: 2010-03-15 19:10

今天做题的时候这个二分算法都没写出来,真惨。
再记下来看一遍。

[code type="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}次查找\n
\n";
echo "找到的下标是{$mid}\n
\n";
echo "找到标志位{$found}\n
\n";
?>

[/code]


原文: http://qtchina.tk/?q=node/406

Powered by zexport