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

旋转数组的最小数字

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

/**
 * 
 * @param rotateArray int整型一维数组 
 * @param rotateArrayLen int rotateArray数组长度
 * @return int整型
 */
int minNumberInRotateArray(int* rotateArray, int rotateArrayLen ) {
    int left = 0;
    int right = rotateArrayLen-1;
    while(left<right)
    {
        if(rotateArray[left] > rotateArray[right])
        {
            left++;
        }
        else if(rotateArray[left] == rotateArray[right])
        {
            if(rotateArray[right-1] > rotateArray[right])
            {
                return rotateArray[right];
            }
            else
            {
                left++;
            }
        }
        else
        {
            break;
        }
    } 
    return rotateArray[left]; 
}

全部评论

相关推荐

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