题解 | #二分查找-I#

二分查找-I

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

func search( nums []int ,  target int ) int {
    // write code here
    if len(nums) == 0 {
        return -1
    }

    l, r := 0, len(nums)-1

    for l <= r {
        middle := l + (r-l)>>2

        if nums[middle] == target {
            r = middle -1
        }else if nums[middle] > target {
            r = middle -1
        }else if nums[middle] < target {
            l = middle +1
        }
    }

    if l >= len(nums) || nums[l] != target {
        return -1
    }
    return l
}
全部评论

相关推荐

AAA专业长城贴瓷砖刘大爷:这样的简历我会直接丢进垃圾桶,花里胡哨的
点赞 评论 收藏
分享
06-10 21:15
门头沟学院 Java
宁阿:好多这种没🧠的公司,他们估计都不知道毕业的人不能给安排实习岗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务