class Solution:
def findMin(self, nums: List[int]) -> int:
left, right = 0, len(nums) - 1
while left < right:
mid = (left + right) // 2
if nums[mid] > nums[right]:
left = mid + 1
elif nums[mid] < nums[right]:
right = mid
#如果重复就缩小右边界
else:
right = right - 1 # key
return nums[left]
如果出现1233333333333这样的数组,遇到重复的元素,那就不断缩小右边界