news 2026/5/30 13:16:18

hot100-53搜索旋转排序数组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hot100-53搜索旋转排序数组

一、题目

nums升序排列,值互不相同,经过k次旋转,找出target的下标,如果没有返回-1。

二、思路

每次比较nums[mid]nums[left]nums[right],判断mid在哪一段,再决定如何缩小范围。

1. 如果nums[left] <= nums[mid]

→ 左半段[left, mid]升序的

  • target在这个范围内(即left <= target <= mid),则在左半段找

  • 否则,在右半段找

2. 如果nums[left] > nums[mid]

→ 右半段[mid, right]升序的

  • target在这个范围内(即mid <= target <= right),则在右半段找

  • 否则,在左半段找

总结:利用旋转数组“两段有序”的特性,通过比较nums[mid]nums[left]nums[right]判断哪一半是有序的,然后根据target是否落在该有序段内来决定搜索方向,实现高效的二分查找。

三、代码

class Solution { public int search(int[] nums, int target) { int left = 0, right = nums.length-1; while(left <= right){ int mid = left + (right - left) /2; if(target == nums[mid]) return mid; if(nums[left] < nums[mid]){ if(target>=nums[left] && target < nums[mid]){ right = mid -1; }else{ left = mid + 1; } }else{ if(target>nums[mid] && target <= nums[right]){ left = mid+1; }else{ right = mid - 1; } } } return -1; } }

总结:通过判断哪一段有序,再看 target 是否在该段的值域内,决定搜索方向

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

【挖洞干货】震惊!某学生1天轻松挖100洞!

正文 目录 快速挖洞前的准备工作 工具的准备&#xff1a; 工具的用法 权重开始撒网 漏洞&#xff1a; first&#xff1a;弱口令 second&#xff1a;XSS third&#xff1a;SQL fourth&#xff1a;文件上传开始下手最后震惊&#xff01;某学生1天轻松挖100洞&#xff0…

作者头像 李华
网站建设 2026/5/24 22:51:44

西门子A5E45508683002

一、产品定位与核心功能该型号属于西门子 SIMATIC S7-300/400 系列 的通信处理器&#xff08;CP模块&#xff09;&#xff0c;主要用于工业控制系统的串行通信接口扩展。其核心功能包括&#xff1a;协议支持&#xff1a;提供 RS232/RS422/RS485 物理接口&#xff0c;支持以下工…

作者头像 李华
网站建设 2026/5/24 22:51:52

安卓Framework 层详解

Framework 架构概览Android Framework 实际上分为两个主要部分&#xff1a;┌─────────────────────────────────────────────┐ │ 应用层 (Application) │ │ Java/Kotlin 应用代码 …

作者头像 李华
网站建设 2026/5/26 6:41:15

通信协议仿真:5G NR协议仿真_(17).5G NR仿真中的大规模MIMO技术

5G NR仿真中的大规模MIMO技术 引言 大规模MIMO&#xff08;Multiple-Input Multiple-Output&#xff09;技术是5G NR&#xff08;New Radio&#xff09;通信系统中的关键技术之一。通过在基站和用户设备上使用大量天线阵列&#xff0c;大规模MIMO可以显著提高系统的频谱效率、覆…

作者头像 李华
网站建设 2026/5/30 3:00:59

AI原生应用语义索引:打造高效信息处理系统

AI原生应用语义索引:打造高效信息处理系统 一、引言:从“关键词匹配”到“语义理解”的革命 在AI原生应用(AI-Native Application)的设计中,信息处理的效率与准确性是核心竞争力。传统应用依赖“关键词索引”——比如搜索“猫”时,只能匹配包含“猫”这个词的文档,而无…

作者头像 李华