题解 | #寻找峰值#
寻找峰值
https://www.nowcoder.com/practice/fcf87540c4f347bcb4cf720b5b350c76
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型一维数组
* @return int整型
*/
public int findPeakElement (int[] nums) {
// write code here
if (nums.length == 0) {
return -1;
}
if (nums.length == 1) {
return 0;
}
int len = nums.length;
//if(len == 2){
if(nums[0] > nums[1]){
return 0;
}
if(nums[len - 1] > nums[len - 2]){
return len - 1;
}
//}
for (int i = 1; i < nums.length - 1; i++) {
System.out.println(" nums[i] : "+nums[i] + " i: " + i);
if (nums[i] > nums[i - 1] && nums[i] > nums[i + 1]) {
System.out.println("res : "+i);
return i;
}
}
return -1;
}
}
将可能出现的几种情况列出来作判断,然后按照匹配规则,随机取出对应索引位置就可以

