852 -山脉阵列中的峰值指数
如果以下属性成立,我们将数组A称为山峰:
A.length >= 3- 存在一些
0 < i < A.length - 1这样的A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1]
鉴于一个绝对是一座山的阵列,返回任何 i 这样的 A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1]。
例1:
输入:[0,1,0]
输出:1
例2:
输入:[0,2,1,0]
输出:1
注意:
3 <= A.length <= 100000 <= A[i] <= 10^6- A是一座山,如上所述
由于山峰阵列中数组数值为先递增后递减,所以当出现前一个值大于后一个值时,前一个值得下标索引即是峰值指数 public static int peakIndexArray(int [] A) { int peak=0,left=0,right=A.length-1; while (left<right) { if (A[left]>A[left+1]) { peak=left; break; } left++; } return peak; }

浙公网安备 33010602011771号