news 2026/8/21 5:23:52

力扣hot100:旋转排序数组中找目标值

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣hot100:旋转排序数组中找目标值

题目描述:

思路分析:

本题前置题目:寻找旋转排序数组中的最小值,解析链接如下

https://mp.csdn.net/mp_blog/creation/editor/156110328

本题是在此题的基础上查找目标值,数组经过旋转之后被分成两个部分,这两个部分都是一个从小到大排列的子数组,如果我们能够得出这两个字数组,然后再分别对他们进行2分查找,就能够查找出目标值。

代码:

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

代码说明:

先找出字数组,分别为【0,a-1】和【a,n-1】。去判断target与nums【n-1】的关系,如果target比nums【n-1】大,则说明其在【0,a-1】中,否则在【a,n-1】中。

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

Vue3_Vite构建工程化前端项目

使用命令行创建工程 在磁盘的合适位置上&#xff0c;创建一个空目录用于存储多个前端项目用vscode打开该目录在vscode中打开命令行运行如下命令 cls清屏 npm create vite 或者 npm create vitelatest第一次使用vite时会提示下载vite&#xff0c;输入y回车即可&#xff0c;下次使…

作者头像 李华
网站建设 2026/8/22 0:37:58

动物领养平台信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着社会对动物福利的关注度不断提升&#xff0c;动物领养需求逐年增长&#xff0c;传统线下领养模式因信息不透明、流程繁琐等问题难以满足现代需求。互联网技术的普及为动物领养提供了高效便捷的解决方案&#xff0c;通过线上平台整合流浪动物信息、领养申请及后续跟踪服…

作者头像 李华
网站建设 2026/8/21 23:34:25

宠物爱心组织管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着社会对宠物福利的关注度不断提升&#xff0c;宠物爱心组织的管理需求日益增长。传统的手工记录和纸质档案管理方式效率低下&#xff0c;难以满足组织在信息存储、志愿者管理、宠物救助等方面的需求。为了提高宠物爱心组织的运营效率&#xff0c;实现信息的数字化管理&…

作者头像 李华
网站建设 2026/8/21 23:34:26

SpringBoot+Vue 动物领养平台管理平台源码【适合毕设/课设/学习】Java+MySQL

摘要 随着社会对动物福利的关注度不断提升&#xff0c;动物领养平台的需求日益增长。传统的线下领养方式存在信息不对称、流程繁琐等问题&#xff0c;而线上平台能够有效解决这些痛点。通过构建一个高效、透明的动物领养管理系统&#xff0c;用户可以便捷地浏览待领养动物信息&…

作者头像 李华
网站建设 2026/8/21 0:32:03

12.20 - 反转链表II

1.反转链表/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(next) {}*…

作者头像 李华
网站建设 2026/8/21 15:01:37

Linly-Talker项目CI/CD流程自动化程度评估

Linly-Talker项目CI/CD流程自动化程度评估 在AI驱动的数字人技术加速落地的今天&#xff0c;一个关键挑战浮出水面&#xff1a;如何让复杂的多模块系统既能快速迭代&#xff0c;又保持高可用和可维护性&#xff1f;以虚拟主播、智能客服为代表的数字人应用&#xff0c;往往集成…

作者头像 李华