热门

最新

红包

立Flag

投票

同城

我的

发布
2301_76331300
曲终酣兴晚^R
2 年前
true2301_76331300

哈哈哈,牛逼牛逼,java高手

@东离与糖宝:?我领啥军了咋就上榜了

…全文
CSDN App 扫码分享
分享
评论
3
打赏
  • 复制链接
  • 举报
下一条:
每日一题## [LCR 069. 山脉数组的峰顶索引]()符合下列属性的数组 `arr` 称为 **山峰数组**(**山脉数组)** :- `arr.length >= 3`- 存在 i(0 < i < arr.length - 1)使得: - `arr[0] < arr[1] < ... arr[i-1] < arr[i] ` - `arr[i] > arr[i+1] > ... > arr[arr.length - 1]`给定由整数组成的山峰数组 `arr` ,返回任何满足 `arr[0] < arr[1] < ... arr[i - 1] < arr[i] > arr[i + 1] > ... > arr[arr.length - 1]` 的下标 `i` ,即山峰顶部。 **示例 1:**```输入:arr = [0,1,0]输出:1```**示例 2:**```输入:arr = [1,3,5,4,2]输出:2```**示例 3:**```输入:arr = [0,10,5,2]输出:1```解法一:二分法时间复杂度:O(logn)空间复杂度:O(1)class Solution {public: int peakIndexInMountainArray(vector<int>& arr) { int left = 1, right = arr.size() - 2; while(left < right) { int mid = left + (right - left) / 2; if(arr[mid - 1] > arr[mid]) right = mid - 1; else if(arr[mid + 1] > arr[mid]) left = mid + 1; else return mid; } return left; }};
立即登录