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

寻找旋转排序数组中的最小值-二分

题目:

思路:

  1. 数组分为左升序段右升序段,最小值是右段的第一个元素;
  2. 若数组未旋转(整体升序),最小值是第一个元素;
  3. 二分关键:比较nums[mid]nums[r](右边界),判断最小值在左 / 右区间:
    • nums[mid] > nums[r]:最小值在mid右侧(l=mid+1);
    • nums[mid] < nums[r]:最小值在mid左侧(含 mid,r=mid);
    • nums[mid] == nums[r]:无法判断,缩小右边界(r-=1)。

代码:

from typing import List class Solution: def findMin(self, nums: List[int]) -> int: l, r = 0, len(nums) - 1 # 二分查找:最终l=r时就是最小值 while l < r: mid = l + (r - l) // 2 # 避免溢出 if nums[mid] > nums[r]: # 最小值在mid右侧 l = mid + 1 elif nums[mid] < nums[r]: # 最小值在mid左侧(含mid) r = mid else: # 相等时缩小右边界(避免漏最小值) r -= 1 return nums[l]
http://www.jsqmd.com/news/171708/

相关文章:

  • 博客标题优化:提高TensorFlow文章点击率的10个模板
  • 2025年口碑爆棚的学历提升机构大盘点:备考避坑指南与优质机构推荐 - 品牌测评鉴赏家
  • 前端+AI:抓住技术变革机遇,重塑职业价值,建议收藏细读
  • 原子操作与锁机制选型难题,如何正确管理多线程资源?
  • Windows下配置TensorFlow 2.9 GPU镜像的详细步骤
  • bell fubini numbers O(n) 求法
  • 告别传统全栈:大模型浪潮下,能驾驭“人机协同”的新物种工程师已诞生!
  • 【强烈收藏】上下文工程六大组件:构建高效大模型系统的核心指南
  • 2025年质量好的净化车间净化板12家厂家评测报告 - 优质品牌商家
  • spr墓园墓地祭扫管理系统vue
  • 【C# 12主构造函数深度解析】:掌握简化编程的终极利器
  • 2025年正规保安服优质供应商推荐榜:保安制服、保安服、保安服装、全棉工作服、制服大衣、厨师工作服、夏季工作服选择指南 - 优质品牌商家
  • 收藏!后端研发的AI突围:保险业务RAG架构全解析(从基础到混合式演进)
  • vue基于web的篮球NBA球星勒布朗詹姆斯球员生涯网站laravel
  • 2025年中山房企批量精装修工程交付能力评测报告 - 优质品牌商家
  • 2026执业药师考试培训哪家通过率高?这三家高性价比机构帮你划重点 - 品牌测评鉴赏家
  • 中山工装公司推荐2025办公酒店批量精装场景优选 - 优质品牌商家
  • 2025国内学历提升机构口碑排行榜:这些靠谱机构助你实现学历跃升 - 品牌测评鉴赏家
  • 涂布机选购指南:靠谱品牌与高性价比是关键 - myqiye
  • 参考文献在哪里找:实用查找方法与资源推荐
  • 2025仿木纹铝单板源头工厂TOP5推荐:口碑供应商深度测评 - 工业推荐榜
  • 2025执业药师考试培训前十机构测评:通关攻略与避坑指南 - 品牌测评鉴赏家
  • 一天一个Python库:Pandas - 拿捏数据的N种姿势
  • 2025优质搬家公司上门服务推荐榜 - 聚焦质量与场景适配性 - 优质品牌商家
  • PyTorch安装教程GPU卸载重装全流程
  • lora25-lora26跨年收发测试
  • Conda update更新TensorFlow-v2.9到最新补丁版本
  • 2025年多场景测力传感器优质产品推荐指南精准匹配工业新能源 - 优质品牌商家
  • Git Log高级用法追踪TensorFlow项目演变
  • Conda install tensorflow-gpu2.9指定版本安装