题解 | #二分查找-I#

二分查找-I

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

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param nums int整型一维数组 
# @param target int整型 
# @return int整型
#
class Solution:
    def search(self , nums: List[int], target: int) -> int:
        # write code here
        left = 0
        right = len(nums)
        if right == left:
            return -1
        while right-left>1:
            mid = (right-left)//2
            if target > nums[left+mid]:
                left += mid
            elif target == nums[left+mid]:
                return left+mid
            else:
                right -= mid
        if target == nums[left]:return left
        elif target == nums[right-1]:return right
        return -1

全部评论
注意空数组、一元数组、mid是相对值
点赞 回复 分享
发布于 2023-03-13 19:43 广东

相关推荐

牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
Java抽象带篮子:难蚌,点进图片上面就是我的大头😆
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务