题解 | #二分查找-I#

二分查找-I

https://www.nowcoder.com/practice/d3df40bd23594118b57554129cadf47b

<?php


/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param nums int整型一维数组 
 * @param target int整型 
 * @return int整型
 */
function search( $nums ,  $target )
{
    if (empty($nums)){
        return -1;
    }
    $left = 0;
    $right = count($nums)-1;
    // 递归
    // return find($nums,$left,$right,$target);
    //  循环
    while ($left <= $right){
        $mid = intval(($left+$right)/2);
        if ($target == $nums[$mid]){
            return $mid;
        }
        if ($nums[$mid] > $target){
            $right = $mid-1;
        }else{
            $left = $mid + 1;
        }
    }
    return -1;
}
// 递归写法
// function find($nums ,$left,$right,$target){
//     if ($left > $right){
//         return -1;
//     }
//     $mid = intval(($left+$right)/2);
//     if ($nums[$mid] == $target){
//         return $mid;
//     }
//     if ($nums[$mid] > $target){
//         return find($nums,$left, $mid-1,$target);
//     }else{
//         return find($nums, $mid+1,$right,$target);
//     }
// }

#二分查找#
全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务