PHP算法之二分查找和顺序查找

    function bin_sch($array, $low, $high, $k) {
            if($low <= $high) {
                    $mid = intval(($low + $high) / 2);
                    if($array[$mid] == $k) {
                            return $mid;
                    } elseif($k < $array[$mid]) {
                            return bin_sch($array, $low, $mid - 1, $k);
                    } else {
                            return bin_such($array, $mid + 1, $high, $k);
                    }
            }
            return -1;
    }
    $low = min(array_keys($array));
    $high = max(array_keys($array));

 

 

    function seq_sch($array, $k) {
            $n = count($array);
            $array[$n] = $k;                //新建一个元素,并将k存放进去  
            for($i = 0; $i < $n; $i++) {
                    if($array[$i] == $k) {
                            break;
                    }
            }
            if($i < $n) {                 //如果在新元素的前面找到了要找的值,则返回该值
                    return $i;
            } else {
                    return -1;
            }
    }

你可能感兴趣的:(php,二分查找,算法,函数,php,开发应用)