解法:二分搜索 + 注意最后一步细节
class Solution: def searchInsert(self, nums: List[int], target: int) -> int: nums_len = len(nums) left = 0 right = nums_len - 1 while left <= right: mid = (left + right) //2 if nums[mid] == target: return mid elif nums[mid] > target: right -=1 else: left +=1 return left # 在left == right的时候多走了一步,这一步要么比target大,则left不动,而且left-1比target小; # 要么比target小,left+1,那这left就是对应位置