leetcode154-- Find minimum in Rotated Sorted Array -2

leetcode154-- Find minimum in Rotated Sorted Array -2

题目

这个相比于之前的那一个中有可能会有重复的。所以这时候需要把右边的减一,注意不是左边的加,因为这时候求的是最小值。

        
class Solution(object):
    def findMin(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        if len(nums)==0:
            return -1
        
        start, end = 0, len(nums)-1
        while(start+1<end):
            mid = start +(end - start)/2
            if nums[mid]<nums[end]:
                end = mid
            elif nums[mid]>nums[end]:
                start = mid
            else:
                end -= 1
                
        if nums[start]<nums[end]:
            return nums[start]
        else:
            return nums[end]


打赏,谢谢~~

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,多谢支持~

打开微信扫一扫,即可进行扫码打赏哦