#-*- coding:utf-8 -*-
'''
description:这题也是用二分查找的思路。如果当前查找的区间中间的数小于等于区间最右边的数,那么我们可以认为最小的数是该数或者在该数的左边
反之则在该数的右边
'''
def find_least(lst):
if len(lst) == 0:
return None
left, right=0, len(lst)-1
while left<right:
mid = (right+left) // 2
if lst[mid] <= lst[right]:
right = mid
else:
left = mid+1
return lst[right]
lst=[3,4,5,6,7,8,9,10,1,2]
print(find_least(lst))