Leetcode_153. 寻找旋转排序数组中的最小值

将升序数组的后面一部分放前面,求最小值。
显然题目是要O(logN)的做法,所以考虑二分,根据该数组的性质二分即可。

code

class Solution {
public:
    int findMin(vector<int>& nums) {
        int n=nums.size();
        int l=0,r=n-1;
        int mid;
        while(l<=r){
            mid=(l+r)/2;
            if(nums[mid]<nums[r]){
                r=mid;
            }else if(nums[mid]>nums[r]){
                l=mid+1;
            }else{
                //l==r==mid
                return nums[mid];
            }
        }
        return nums[mid];
    }
};
上一篇:p148 旋转有序数组的最小值(leetcode 153)


下一篇:【spring-boot】org.springframework.boot.autoconfigure.thymeleaf.ThymeleafAutoConfiguration$ThymeleafDe