旋转数组的最小数字(和第一个元素比)

旋转数组的最小数字

http://www.nowcoder.com/questionTerminal/9f3231a991af4f55b95579b44b7a01ba

看到好多回答都是上来就二分法。。我看到题第一反应就是从后往前和第一个元素比,遇到点小问题就是一开始最后的return写的return 0,测试用例过90%,后来研究了一下是没考虑所有的都进不了if的情况,改完就对了

class Solution {
public:
    int minNumberInRotateArray(vector<int> rotateArray) {
        if(rotateArray.size() == 0)
            return 0;
        int i;
        for(i = rotateArray.size() - 1; i > 0; i--){
            if(rotateArray[i] > rotateArray[0]){
                return rotateArray[i + 1];
            }
        }
        return rotateArray[1];
    }
};
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务