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

二分查找法细节分析及案例操作

细节二搜索时选定新边界新边界的值是mid ± 1还是mid在进行一次搜索判断之后查找新边界时新边界一般有两种选择以right为例right mid - 1right mid按照标准的二分查找框架这两种赋值方式的区别是新区间是否还要包括mid这个点。一般来说选择新边界时其实已经对mid这个值已经判断过了秉持着最大程度地缩小搜索区间的理念按理说应该要将mid这个点在新区间排除掉的但联系上一个问题如果判断条件是left right那么搜索区间是左闭右开区间即使right mid也不会判断mid但是如果right mid - 1那么就会少判断right mid - 1这个点所以这里新区间的边界为right mid。所以这里的缩小区间表示式是和判断条件联系在一起的需要考虑实际情况然后再进行判断尽管二分查找有统一的框架模板操作步骤但二分查找不是一种框架模板而是一种思想案例当数组中含有多个目标数字查找最左边目标数字的索引查找最右边目标数字的索引2. 当数组中不含有目标数字查找目标数字的插入位置搜索边界集合中含有多个符合要求的解查找左边界或者右边界e.g.按照全闭区间查找查找左右边界的关键是nums[mid] target时如何划定新区间。如果查找左边界int binarySearch(vectorint nums,int target) { int n nums.size(); int left 0,right n - 1; int ans -1; while(left right){ int mid left (right - left) / 2; if (nums[mid] target){ // 这里能判断出 mid 可能是左边界但是对于 mid - 1 我们是无法判断的所以 ans mid; right mid - 1; }else if (nums[mid] target) { right mid - 1; }else { left mid 1; } } return ans; }最终结果都是ans。在每一次判断(nums[mid] target)中我们只能判断出mid是符合要求的而无法判断出mid - 1或者mid 1是否符合要求所以ans mid。按照这个思路中其实也可以不采用 ans 这个变量而采用right 1或者left - 1的形式因为right 1或者left - 1等于mid不过这需要进一步判断right 1或者left - 1是否在数组范围内如果你将nums[mid] target和nums[mid] target或者nums[mid] target合并起来你还需要判断nums[left - 1]或者nums[right 1]是否等于target因为当nums[mid] target或者nums[mid] target时也会给ans赋值。
http://www.rkmt.cn/news/1405803.html

相关文章:

  • macOS光标自定义终极方案:用Mousecape免费打造个性化鼠标指针体验
  • 贵州想学应急救援技术专业,哪家学校好?2026最新全门槛择校指南 - 深度智识库
  • 普通程序员怎么用AI真正提效(不只让它写CRUD)
  • 小米跟进DeepSeek永久降价,大模型价格战升温!MiMo-V2.5系列API降幅达99%
  • InternLM2.5-1.8B-Chat性能深度评测:18亿参数模型的惊人表现
  • systemverilog中关于多线程的若干思考
  • 【ChatGPT商业化生死线】:权威复盘17家头部公司画布实践——仅3家实现LTV>CAC>3.0
  • 如何实现弱人工智能向强人工智能的跨越
  • QuickLyric终极指南:三步实现Android音乐歌词自动同步解决方案
  • AlmaLinux 同时发布 9.8 和 10.2 稳定版,新增软件包、提升安全性并支持 32 位软件
  • 2026年宁波10大知名商事争议律师(权威综合版) - 资讯速览
  • LongCat-Image-Edit-Turbo性能优化指南:平衡速度与质量的终极配置方案
  • 脉冲神经网络进阶:多室神经元与树突异质性计算架构解析
  • Keil µVision代码量超限(L6050U)错误解决方案
  • IP地址查询服务架构挑战与Go语言高性能解决方案
  • 新型H6拓扑:无变压器光伏逆变器漏电流抑制与效率优化方案
  • 照片去水印免费软件app有哪些?2026实测横评+踩坑指南
  • 中古奢包回收不踩坑!深圳爱马仕香奈儿回收机构实测对比! - 奢侈品回收测评
  • 2026年5月惠州喷砂机/抛丸机/喷砂房/空压机/除尘设备厂家如何选?深度解析专业抛丸机实力服务商,认准华莱特机械设备 - 2026年企业资讯
  • Grok-2 Tokenizer特殊标记解析:122个控制标记的完整指南
  • Unity 2022 LTS 导航寻路实战:用 NavMesh 和 NavMeshAgent 组件快速实现点击移动
  • SaaS MVP成本拆解:从核心功能到发布质量的务实预算指南
  • ChatGPT食谱创作进阶必修课:融合FAT(Food-Aware Tuning)思维的4层提示架构设计
  • UI-TARS桌面版:5分钟掌握智能GUI自动化的终极指南
  • 强化学习在250kVA逆变器上的安全在线训练框架设计与验证
  • 如何高效获取中小学电子课本:专业教材下载工具的完整指南
  • 2026厦门高端名表回收行业测评:本地合规交易标准与优质机构权威排行 - 薛定谔的梨花猫
  • 海口品牌首饰回收哪家靠谱 主流平台价格对比 - 合扬奢侈品交易中心
  • 重庆公司注册代办机构排行:5家合规服务商盘点(2026版) - 果果1998
  • Google Drive下载实战:如何用gdown构建企业级数据管道