/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param nums int整型一维数组 
 * @param numsLen int nums数组长度
 * @return int整型
 */
int findPeakElement(int* nums, int numsLen ) {
    // write code here
    if (numsLen == 1) {  // 只有一个元素,那么它就是峰值
        return 0;
    }

    // 单边峰处理,只需要检测左端和右端即可
    if (nums[numsLen-1] > nums[numsLen-2]) { 
        return numsLen-1;
    }
    if (nums[0] > nums[1]) {
        return 0;
    }
    if (numsLen == 2 && nums[0] == nums[1] ) {
        return -1;
    }

    for (int i = 0; i < numsLen - 3; i++) {
        if (nums[i]<nums[i+1] && nums[i+1]>nums[i+2]) {
            return i+1;
        }
    }
    return -1;
}