NC-107 寻找峰值 遍历

寻找峰值

http://www.nowcoder.com/questionTerminal/1af528f68adc4c20bf5d1456eddb080a

从后往前遍历数组

class Solution {
public:
    /**
     * 寻找最后的山峰
     * @param a int整型一维数组 
     * @param aLen int a数组长度
     * @return int整型
     */
    int solve(int* a, int aLen) {
        // write code here
        for (int i = aLen - 1; i >= 0; --i) {
            if (i == aLen - 1) {
                if (a[i] >= a[i - 1])
                    return i;
            }
            else if (i == 0) {
                if (a[i] >= a[i + 1])
                    return i;
            }
            else {
                if (a[i] >= a[i + 1] && a[i] >= a[i - 1])
                    return i;
            }
        }
        return -1;
    }
};
全部评论

相关推荐

这一集 硕士输的很惨
HoePointer:普通硕士的悲哀,高的进不去,低的要不起
点赞 评论 收藏
分享
评论
8
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务