题解 | #旋转数组的最小数字#

旋转数组的最小数字

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

只要出现降序则出现了最小值 比如[4,5,1,2,3] :5到1是降序,则1就是最小值;

如果没出现降序,说明没旋转,则第一个数就是最小值。

int minNumberInRotateArray(int* rotateArray, int rotateArrayLen )
{
    int i=0;
    for(i=1;i<rotateArrayLen;i++)
    {
        if(rotateArray[i-1]>rotateArray[i])
            return rotateArray[i];
    }
    return rotateArray[0];
}
全部评论
这能达到O(logn)的时间复杂度?这不是O(n)吗?为什么你这个可以编译通过
点赞 回复 分享
发布于 04-05 13:14 四川

相关推荐

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