山峰元素是指其值大于或等于左右相邻值的元素。给定一个输入数组nums,任意两个相邻元素值不相等,数组可能包含多个山峰。找到索引最大的那个山峰元素并返回其索引。

假设 nums[-1] = nums[n] = -∞。

由于题干要求寻找索引最大的那个山峰元素,所以可以将数组从后往前遍历,去掉数组的头尾,将数组的最后一位单独进行判断。
先判断头,符合就输出尾,不符合就往中间遍历,其中一旦符合就输出其索引并结束程序,若都不符合就返回头(0)。
代码:

**import java.util.*;
**public class Solution {
**    /****
**     * 寻找最后的山峰
**     * @param a int整型一维数组 
**     * @return int整型
**     */
**    public int solve (int[] a) {
          // 判断数组尾部
**        if(a[a.length - 1] > a[a.length - 2]){
**            return a.length - 1;
**        }
**        // 判断数组中间
          // 注意是从数组的倒数第二个元素开始遍历到正数第二个元素
**        for(int i = a.length - 2; i > 0; i--){
**            if(a[i] > a [i + 1] && a[i] > a[i - 1]){
**                return i;
**            }
**        }
**        return 0;
**    }
**}