news 2026/4/18 14:36:48

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
寻找旋转排序数组中的最小值-二分

题目:

思路:

  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]
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 12:42:12

揭秘C++模板元编程:5种高效代码简化方法你未必全知道

第一章&#xff1a;C模板元编程的起源与核心价值C模板元编程&#xff08;Template Metaprogramming, TMP&#xff09;起源于对泛型编程的深入探索&#xff0c;最早在1990年代由Alexander Stepanov等人推动STL设计时初现端倪。随着编译器对模板支持的完善&#xff0c;开发者发现…

作者头像 李华
网站建设 2026/4/18 3:33:23

TFLite移动端部署:让TensorFlow模型走向手机终端

TFLite移动端部署&#xff1a;让TensorFlow模型走向手机终端 在智能手机无处不在的今天&#xff0c;用户对应用的响应速度和隐私保护提出了更高要求。想象一下&#xff1a;你打开相机想用“实时翻译”功能扫描菜单&#xff0c;结果每次识别都要上传图片到云端——不仅慢得让人抓…

作者头像 李华
网站建设 2026/4/18 3:33:54

C#集合表达式新特性:如何将数据初始化速度提升300%?

第一章&#xff1a;C#集合表达式数据初始化优化在现代C#开发中&#xff0c;集合的初始化方式直接影响代码的可读性与性能。C# 12 引入了集合表达式&#xff08;Collection Expressions&#xff09;&#xff0c;允许开发者使用简洁的语法初始化数组、列表及其他集合类型&#xf…

作者头像 李华
网站建设 2026/4/18 5:26:30

视频融合平台EasyCVR融合无线监控,打造智能高效安防解决方案

一、方案概述 在安防监控领域&#xff0c;随着无线技术的发展&#xff0c;无线监控以其部署灵活、成本可控、扩展性强等优势&#xff0c;逐渐成为传统有线监控的重要补充与升级方向&#xff0c;在安防监控领域得到了广泛应用。EasyCVR视频管理平台结合无线监控技术&#xff0c…

作者头像 李华
网站建设 2026/4/18 8:50:39

如何用GCC 14抢先体验C++26的10项颠覆性并发特性?

第一章&#xff1a;GCC 14 C26 并发特性测试GCC 14 作为首个实验性支持 C26 标准的编译器版本&#xff0c;引入了多项并发编程的新特性&#xff0c;为开发者提供了更高效、更安全的多线程开发体验。这些特性目前仍处于草案阶段&#xff0c;需通过特定编译选项启用。启用 C26 并…

作者头像 李华
网站建设 2026/4/18 11:05:46

使用Git管理你的TensorFlow-v2.9机器学习项目代码

使用Git管理你的TensorFlow-v2.9机器学习项目代码 在现代AI研发中&#xff0c;一个常见的尴尬场景是&#xff1a;你在本地训练出一个准确率高达96%的图像分类模型&#xff0c;兴冲冲地把代码发给同事复现&#xff0c;结果对方跑出来只有87%&#xff0c;还报了一堆依赖冲突错误…

作者头像 李华