Skip to content

Latest commit

 

History

History
44 lines (35 loc) · 815 Bytes

File metadata and controls

44 lines (35 loc) · 815 Bytes

704 二分查找

难度: Easy

刷题内容

原题连接

解题方案

思路 1

二分查找

class Solution(object):
    def search(self, nums, target):
        """
        """
        l = 0
        r = len(nums)-1
        if r < 0 or target > nums[-1]:
            return -1
            
        while l <= r:
            mid = (l+r) // 2
            if nums[mid] == target:
                return mid
            elif nums[mid] < target:
                l = mid+1
            elif nums[mid] > target:
                r = mid-1
                
        return -1
        

思路2

class Solution(object):
    def search(self, nums, target):
        if target in nums:
            return nums.index(target)
        else:
            return -1