迭代二分法查找

function Search($arr, $n, $v)  
{  
    $left   = 0;  
    $right  = $n - 1;  //6
    while ($left <= $right){  
        $middle  = bcdiv(bcadd($right, $left), 2);  
        if ($arr[$middle] > $v) {  
            $right = $middle - 1;  
        } elseif ($arr[$middle] < $v) {  
            $left  = $middle + 1;  
        } else {  
            return $middle;  
        }  
    }  
    return -1;  
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页