查找最小值(可以采用二分法)
![20210407125032879.png](https://img-blog.csdnimg.cn/20210407210750560.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDUzMzg2OQ==,size_16,color_FFFFFF,t_70)
class Solution:
def minNumberInRotateArray(self, rotateArray):
"""
# O(n)的复杂度
minNum = 0
for i in range(len(rotateArray)):
minNum = minNum if minNum < rotateArray[i] and minNum != 0 else rotateArray[i]
return minNum
"""
def bSearch(self, array, target):
left = 0
right = len(array) - 1
while left <= right:
mid = (left + right) // 2
if array[mid] == target:
return mid
elif array[mid] < target:
left = mid + 1
else:
right = mid -1
return None
if __name__ == "__main__":
s = Solution()
str = [1, 2, 3, 4, 5]
print(s.bSearch(str, 5))
print(s.minNumberInRotateArray(str))