二分插入
class Solution:
def search(self, nums: List[int], target: int) -> int:
if target not in nums:return -1
return bisect.bisect_left(nums, target)
相对安全的写法
class Solution:
def search(self, nums: List[int], target: int) -> int:
left = 0
right = len(nums) - 1
while left <= right: #注意需要带上 = 号
mid = (left + right)//2
if nums[mid] == target:return mid
elif nums[mid] < target:left = mid + 1
else: right = mid - 1
return -1