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

LeetCode热题100-寻找旋转排序数组中的最小值

已知一个长度为n的数组,预先按照升序排列,经由1n旋转后,得到输入数组。例如,原数组nums = [0,1,2,4,5,6,7]在变化后可能得到:

  • 若旋转4次,则可以得到[4,5,6,7,0,1,2]
  • 若旋转7次,则可以得到[0,1,2,4,5,6,7]

注意,数组[a[0], a[1], a[2], ..., a[n-1]]旋转一次的结果为数组[a[n-1], a[0], a[1], a[2], ..., a[n-2]]

给你一个元素值互不相同的数组nums,它原来是一个升序排列的数组,并按上述情形进行了多次旋转。请你找出并返回数组中的最小元素

你必须设计一个时间复杂度为O(log n)的算法解决此问题。

题目说明预先已经按照升序排列,经过多次宣传后数组会呈现两段递增区间,例如如下数据:[3,4,5,1,2]。最小值是两段的分界点

  1. mid数比最右边大 → 说明左半段是大区间,最小值一定在右边
  2. mid数≤最右边 → 右半段有序,最小值在左边或自己

循环结束left == right,就是最小数下标。

class Solution: def findMin(self, nums: List[int]) -> int: left = 0 right = len(nums) - 1 while left < right: mid = (left + right) // 2 if nums[mid] > nums[right]: left = mid + 1 else: right = mid return nums[left]
http://www.jsqmd.com/news/716235/

相关文章:

  • 2026年AI大模型API中转服务揭秘:各平台特色解析,谁是企业开发最优之选?
  • 高质量人体检测与行人识别数据集分享(适用于YOLO系列深度学习分类检测任务)
  • 【花雕动手做】你的 5 美元 AI 助手:PycoClaw 让 ESP32“能聊、会想、可进化”
  • 降AI工具贵的真贵在哪?效果/速度/承诺3维度横评毕业季必看!
  • 无感FOC观测器怎么选?深入对比EKF、滑模与龙伯格在PMSM控制中的实战表现
  • 微电网储能协同架构设计:储能位置、容量配置与控制逻辑
  • 当朴素贝叶斯遇到‘非朴素’数据:离散化与编码策略深度实战指南
  • AD23隐藏技巧:用Smart PDF功能一键生成带BOM和分层图的完整项目文档
  • 重生AI Agent应用开发工程师之RAG知识库与MCP协议工具
  • 无人机飞行日志分析神器:5分钟上手UAV Log Viewer
  • 国产油车新策略,发展油混,左打电车,右挖日系车的根
  • 【2026最新版|建议收藏】小白程序员必看!大模型与智能体入门全解析,轻松打通AI开发入门壁垒
  • 联想笔记本BIOS隐藏选项终极解锁指南:免费快速释放硬件潜能
  • 英雄联盟玩家的终极工具箱:League Akari 完全指南
  • 抖音下载器:3分钟掌握无水印批量下载的终极解决方案
  • WorkshopDL终极指南:无需Steam客户端免费下载创意工坊模组的完整解决方案
  • 高压电线电力巡检六类图像识别数据集分享(适用于YOLO系列深度学习分类检测任务)
  • 2026年4月28日开庭!马斯克起诉OpenAI索赔1500亿美元,或重塑AI行业格局
  • 细胞更新与人体日常代谢,一文简单了解!
  • 清华PPT模板终极指南:三步打造专业学术演示文稿
  • 【2026年五一数学建模竞赛B题】完整思路+论文+代码
  • MCP、A2A、AGENTS.md——Agent 标准之争,开发者到底该跟哪个
  • 如何和孩子建立友好关系 - 教育快讯速递
  • 2026年零基础如何部署和集成Hermes Agent/OpenClaw?步骤详解
  • 金华白转黑养发馆哪个品牌好?黑奥秘四大专利成分,从根源改善头皮生态 - 美业信息观察
  • 不止是桌面开发:用Avalonia v11把你的.NET应用一键发布到Web、安卓和iOS
  • 终极iOS设备越狱工具:ipwndfu完整指南与实用解决方案
  • 餐饮外卖孵化运营公司公司
  • 别再被权限和路径坑了!Win11下Python 3.11 + Binwalk 2.3.2 保姆级安装避坑实录
  • 舵机控制中的半正弦(S型)速度曲线及其在STM上的应用