原题地址:https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/
解题思路:这道题和上一道题的区别是,数组中可能有相同的数。那么,分下列几种情况:
代码:
class Solution: # @param num, a list of integer # @return an integer def findMin(self, num): L = 0; R = len(num)-1 while L < R and num[L] >= num[R]: M = (L+R)/2 if num[M] > num[L]: L = M + 1 elif num[M] < num[R]: R = M else: L += 1 return num[L]