当前位置:网站首页>LeetCode:162. 寻找峰值
LeetCode:162. 寻找峰值
2022-07-06 08:44:00 【Bertil】
峰值元素是指其值严格大于左右相邻值的元素。
给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。
你可以假设 nums[-1] = nums[n] = -∞ 。
你必须实现时间复杂度为 O(log n) 的算法来解决此问题。
示例 1:
输入:nums = [1,2,3,1]
输出:2
解释:3 是峰值元素,你的函数应该返回其索引 2。
示例 2:
输入:nums = [1,2,1,3,5,6,4]
输出:1 或 5
解释:你的函数可以返回索引 1,其峰值元素为 2;
或者返回索引 5, 其峰值元素为 6。
提示:
- 1 <= nums.length <= 1000
- -2^31 <= nums[i] <= 2^31 - 1
- 对于所有有效的 i 都有 nums[i] != nums[i + 1]
解题思路
1.首先找出最大的元素,然后返回其索引即可
2.解释:为什么最大值即答案?
- 因为题目中已经假设 nums[-1] = nums[n] = -∞,所以峰值不会在首尾元素出现
- 数组中的最大值左右相邻元素必定小于最大值
代码
/** * @param {number[]} nums * @return {number} */
var findPeakElement = function(nums) {
return nums.indexOf(Math.max(...nums))
};
边栏推荐
- egg. JS getting started navigation: installation, use and learning
- China high purity silver nitrate Market Research and investment strategy report (2022 Edition)
- Shift Operators
- China Light conveyor belt in-depth research and investment strategy report (2022 Edition)
- 【MySQL】日志
- 被破解毁掉的国产游戏之光
- Screenshot in win10 system, win+prtsc save location
- TDengine 社区问题双周精选 | 第三期
- Detailed explanation of heap sorting
- C语言双指针——经典题型
猜你喜欢
【ROS】usb_ Cam camera calibration
2022.02.13 - NC004. Print number of loops
查看局域网中电脑设备
延迟初始化和密封类
Marathon envs project environment configuration (strengthen learning and imitate reference actions)
Roguelike game into crack the hardest hit areas, how to break the bureau?
Visual implementation and inspection of visdom
Deep analysis of C language data storage in memory
Roguelike游戏成破解重灾区,如何破局?
Deep learning: derivation of shallow neural networks and deep neural networks
随机推荐
PC easy to use essential software (used)
Excellent software testers have these abilities
[MySQL] lock
TDengine 社区问题双周精选 | 第三期
win10系统中的截图,win+prtSc保存位置
个人电脑好用必备软件(使用过)
Analysis of the source code of cocos2d-x for mobile game security (mobile game reverse and protection)
Leetcode question brushing (5.31) string
【刷题】牛客网面试必刷TOP101
Verrouillage [MySQL]
Delay initialization and sealing classes
2022.02.13 - NC003. Design LRU cache structure
Pointer advanced --- pointer array, array pointer
Marathon envs project environment configuration (strengthen learning and imitate reference actions)
egg. JS getting started navigation: installation, use and learning
The mysqlbinlog command uses
【MySQL】鎖
C語言雙指針——經典題型
Using pkgbuild:: find in R language_ Rtools check whether rtools is available and use sys The which function checks whether make exists, installs it if not, and binds R and rtools with the writelines
hutool优雅解析URL链接并获取参数