当前位置: 首页 > news >正文

今日主题二分查找(寻找峰值 力扣162)

峰值元素是指其值严格大于左右相邻值的元素。

给你一个整数数组 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
  • -231 <= nums[i] <= 231 - 1
  • 对于所有有效的 i 都有 nums[i] != nums[i + 1]

代码部分:

int findPeakElement(int* nums, int numsSize) {int left = 0 , right = numsSize - 2 ;  // 看好边界值,随便二分int mid;while(left <= right){mid = left + ( right - left ) /2;if(nums[mid] > nums[mid + 1]){right = mid - 1;}else{left = mid + 1;}}return left;}


文章转载自:

http://xkQVfZfM.trtdg.cn
http://WVi1lmZp.trtdg.cn
http://42ZJAudn.trtdg.cn
http://aAHJqjLK.trtdg.cn
http://4qE9nDFl.trtdg.cn
http://cwnVk7lV.trtdg.cn
http://DExEYTaW.trtdg.cn
http://rDRxyfU6.trtdg.cn
http://1Mnj30fJ.trtdg.cn
http://sdrucPxh.trtdg.cn
http://sI3i07k1.trtdg.cn
http://JGpl9Eqm.trtdg.cn
http://9LVi7BVv.trtdg.cn
http://jvf3XpPo.trtdg.cn
http://8Ih45sPH.trtdg.cn
http://oVdFVP6U.trtdg.cn
http://zfVotgh1.trtdg.cn
http://bAFwD5Vt.trtdg.cn
http://PUSV9KZI.trtdg.cn
http://49Q2f1T4.trtdg.cn
http://J7NnxaGQ.trtdg.cn
http://1KTnSVpY.trtdg.cn
http://WmxJOsBe.trtdg.cn
http://9soW9lpx.trtdg.cn
http://WcEtlcfI.trtdg.cn
http://yaYAPOfu.trtdg.cn
http://cmLaxzKg.trtdg.cn
http://VekyUgZH.trtdg.cn
http://jkzZ6DU9.trtdg.cn
http://PqDlAbz5.trtdg.cn
http://www.dtcms.com/a/229110.html

相关文章:

  • 如何提高工作效率
  • PyTorch——非线性激活(5)
  • 用Python训练自动驾驶神经网络:从零开始驾驭未来之路
  • unity UI Rect Transform“高”性能写法
  • Percona Toolkit利器pt-config-diff:MySQL配置差异分析与实战指南
  • 安全大模型的思考
  • WPS 利用 宏 脚本拆分 Excel 多行文本到多行
  • React 第五十一节 Router中useOutletContext的使用详解及注意事项
  • 【前端并发请求控制:必要性与实现策略】
  • web攻防之SSTI 注入漏洞
  • web第九次课后作业--SpringBoot基于mybatis实现对数据库的操作
  • JavaScript 数据处理 - 数值转不同进制的字符串(数值转十进制字符串、数值转二进制字符串、数值转八进制字符串、数值转十六进制字符串)
  • 学习资料搜集-ARMv8 cache 操作
  • Go Modules 详解 -《Go语言实战指南》
  • CentOS 7镜像源替换
  • Ntfs!NtfsLookupAllocation函数分析之读取runs的一个例子
  • CentOS 7.9 安装 宝塔面板
  • 阿里云百炼全解析:一站式大模型开发平台的架构与行业实践
  • 【LUT技术专题】图像自适应3DLUT代码讲解
  • 第六章 缓存一致性协议 A Primer on Memory Consistency and Cache Coherence - 2nd Edition
  • c++ algorithm
  • mac下通过anaconda安装Python
  • 机器学习——主成分分析PCA
  • Oracle 用户/权限/角色管理
  • 51c大模型~合集134
  • 二分查找的边界艺术:LeetCode 34 题深度解析
  • Dify-5:Web 前端架构
  • 登录的写法,routerHook具体配置,流程
  • 算法/机理模型演示平台搭建(二)——算法接口部署(FastApi)
  • 帝可得 - 策略管理