Leetcode:剑指 Offer 11. 旋转数组的最小数字

class Solution {
    public int minArray(int[] numbers) {
        int start=0,end=numbers.length-1;
        int mid=0;
        while(start<end){
            mid=start+(end-start)/2;
            if(numbers[mid]<numbers[end]){
                end=mid;
            }
            else if(numbers[mid]>numbers[end]){
                start=mid+1;
            }
            //因为存在重复元素,所以如果numbers[mid]==numbers[end],可以把end-1
            else{
                end=end-1;
            }
        }
        return numbers[start];
    }
}
posted @ 2022-03-13 10:16  Dreamer_szy  阅读(18)  评论(0)    收藏  举报