Find Minimum in Rotated Sorted Array II

Medium, Binary Search

Question

Find Minimum in Rotated Sorted Array,
假設有重復數字。

Solution

解法依然是二分搜索,不過多了一種情況要考慮。

class Solution(object):
    def findMin(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        L, R = 0, len(nums)-1
        while L<R and nums[L]>=nums[R]:
            M = (L+R)/2
            if nums[M]>nums[R]:
                L = M+1
            elif nums[M]<nums[L]:
                R = M
            else:
                L = L+1
                
        return nums[L]
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容