class Solution {
public int findPeakElement(int[] nums) {
// 初始化一个索引变量,用于存储当前找到的峰值元素的索引
int index = 0;
// 遍历数组中的每个元素
for (int i = 0; i < nums.length; i++) {
// 如果当前元素大于当前记录的峰值元素
if (nums[i] > nums[index]) {
// 更新峰值元素的索引为当前元素的索引
index = i;
}
}
// 返回峰值元素的索引
return index;
}
}
class Solution {
public int[] searchRange(int[] nums, int target) {
int left = 0;
int right = nums.length - 1;
int first = -1;
int last = - 1;
while (left <= right) {
int mid = (right - left) / 2 + left;
if (target < nums[mid]) {
right = mid - 1;
} else if (target > nums[mid]) {
left = mid + 1;
} else {
first = mid;
right = mid - 1;
}
}
left = 0;
right = nums.length - 1;
while (left <= right) {
int mid = (right - left) / 2 + left;
if (target < nums[mid]) {
right = mid - 1;
} else if (target > nums[mid]) {
left = mid + 1;
} else {
last = mid;
left = mid + 1;
}
}
return new int[]{first, last};
}
}