题解 | #寻找峰值#

寻找峰值

https://www.nowcoder.com/practice/fcf87540c4f347bcb4cf720b5b350c76

C语言:

int findPeakElement(int* nums, int numsLen ) {

    // write code here

    int i,j;

    for(i = 0; i < numsLen-1; i++){         //遍历数组假设当前位置是山峰

        for(j = i+1; j < numsLen; j++){     //遍历山峰下一个

            if(nums[j] >= nums[i]){         //如果下一个值大于等于i(山峰),则退出当前内循环,选取下一个山峰

                break;

            }else{                          //如果下一个值小于i(山峰),则i是山峰成立,返回i

                return i;

            }

        }

    }

    return i;           //如果找到末尾,没有则返回i,此时[1][1,2]两种情况都适用

}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务