154. Find Minimum in Rotated Sorted Array II

和153的情況類似,主要是有相等重複的情況,需要將right-1

class Solution {

public:

    int findMin(vector<int>& nums) {

        if(nums.size() == 0 ) return 0;

        int left(0), right(nums.size()-1), mid((right+left)/2);

        while(left < right){   

            //cout << "left is:" << left << "right is:" << right << "mid is:" << mid;

            if(nums[mid] > nums[right]) left = mid + 1;

            else if(nums[mid] < nums[right]) right = mid;

            else right = right - 1; 

            mid = (right + left) /2;

        }

        return nums[mid];

    }

};

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章