LeetCode Find Peak Element

A peak element is an element that is greater than its neighbors.

Given an input array where num[i] ≠ num[i+1], find a peak element and return its index.

You may imagine that num[-1] = num[n] = -∞.

For example, in array [1, 2, 3, 1], 3 is a peak element and your function should return the index number 2.

 1 public class Solution {
 2     public int findPeakElement(int[] num) {
 3         int peak = Integer.MIN_VALUE;
 4         int res = 0;
 5         for (int i = 1; i < num.length - 1; i++) {
 6             if (num[i] > num[i - 1] && num[i] > num[i + 1]&&num[i]>peak) {
 7                 res = i;
 8                 peak = num[i];
 9             }
10         }
11         if (num[0] > num[res] && num[0] > num[num.length - 1]) {
12             return 0;
13         } else if (num[num.length - 1] > num[0] && num[num.length - 1] > num[res]) {
14             return num.length - 1;
15         }else return res;
16     }
17 }
原文地址:https://www.cnblogs.com/birdhack/p/4148152.html