【leetcode】33. (Medium)Search in Rotated Sorted Array(JAVA)

33. 搜索旋转排序数组 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为[4,5,6,7,0,1,2] 。 给你 旋转后 的数组 nums 和一. 阅读详情

题目链接

解题思路:
这道题的意思是有一串升序数组,数组是有序的,但是被折了一下,要求找到数组中一个数的位置,没有这个数的话返回-1。
这个题用折半查找做。

提交代码:

class Solution {
    public int search(int[] nums, int target) {
        if (nums == null || nums.length == 0)
			return -1;

		int mid, left = 0, right = nums.length - 1;
		while (left <= right) {
			mid = (left + right) / 2;
			if (nums[mid] == target)	return mid;
			else if (nums[mid] < nums[right]) {
				// 右边是有序的,
				//用nums[left]和nums[mid]判断target是否在右边
				if (target>=nums[mid]&&target<=nums[right])
					left = mid + 1; // target在右边
				else
					right = mid - 1;
			} else {
				// 左边是有序的
				if (target<=nums[mid]&&target>=nums[left])
					right = mid - 1; 
				else
					left = mid + 1;
			}
		}
		return -1;
    }
}

运行结果:
在这里插入图片描述

Open FPV VTX与Betaflight的MSP协议配置详解:从硬件连接到OSD显示 本文详细解析了如何通过MSP协议将Open FPV VTX与Betaflight飞控进行深度集成,实现飞行数据在OSD上的稳定显示。内容涵盖从硬件连接、Betaflight端口MSP服务启用,到VTX侧配置与OSD元素布局调校的全流程,并提供了常见问题的排查思路,帮助FPV玩家构建可靠的数据叠加系统。 阅读详情

相关推荐

IATF16949核心职位全解析

TM / Top MgmtMR / QMRProcess OwnerQMQAQCSQECQEPQEPETEMEIEPM / PJMFMEA ModeratorMSA CoordinatorSPC CoordinatorCM / CCB内审员CP / CPK

weixin_49938552的博客 973

Java | Leetcode Java题解之第33题搜索旋转排序数组

Java | Leetcode Java题解之第33题搜索旋转排序数组

m0_57195758的博客 439

LS-DYNA超高速碰撞仿真入门:从SPH算法配置到铝靶板穿孔分析(附K文件模板)

本文详细介绍了使用LS-DYNA中的SPH(光滑粒子流体动力学)算法进行超高速碰撞仿真的完整流程。以铝弹丸撞击铝靶板为例,从SPH算法原理、LS-PrePost前处理、材料模型与状态方程设置,到接触定义、边界条件及K文件生成,提供了系统的入门指导和关键参数调试经验,帮助工程师高效模拟材料破碎、穿孔等极端变形问题。

h0i1j2k3l的博客 726

leetcode | java | 第33题 | 搜索旋转排序数组

【代码】leetcode | java | 第33题 | 搜索旋转排序数组。

iCling的博客 486

100G SR4 光模块设计

目前100G SR4 光模块主要采用COB 封装技术,在光电芯片键合(bonding)阶段,首先使用银胶将光芯片、电芯片精准固定在电路板规定位置上,该工序即为元件键合(die bonding);然后采用打线机进行金线键合(wire bonding),完成光模块内部的电气连接。在光路耦合阶段,采用8路阵列透镜组完成光路90°弯折及聚焦,并采用有源耦合的工艺进行光路的最终确认,该设计方案工艺简单、高效,借助全自动贴片机、打线机和耦合台就可实现100G SR4 光模块的大批量生产。

Flyin_Group的博客 1374

企业级防火墙实战:用深信服AF8.0打造安全办公网络(含流控/僵尸防护配置)

本文详细介绍了如何利用深信服AF8.0防火墙构建企业级安全办公网络,涵盖设备初始化、多接入方式配置、三维一体安全防护体系(包括应用控制、僵尸防护和智能流控)以及典型问题排查。通过实战案例和配置模板,帮助IT管理员高效部署和优化网络安全管理,提升企业网络安全防护能力。

weixin_28716443的博客 281

LeetCode 力扣 33题 java 解题思路

比如说要找5,从7分开后,两边总有一边是完全排序的,有一边没有,那么问题在于如何找到那个完全排序的一边,可以从两个段的首尾元素来判断,如果左端点比右端点小,那么可以得出其是完全排序的,而且其端点是最大最小值,所以可以百分百的确定目标数值在不在这个段里。论区两拨人理解的都是对的,但是说的不是一个问题:一些人说的“只在有序的半边二分”指的是以mid为分界的;该题的思路起始挺简单:始终去有序的那个范围内去找target,不在就去另一半无序的找,但是要将无序再次划分成有序然后再找...

baidu_39446322的博客 345

MOSFET高频响应实战:如何用LTspice仿真内部电容效应(附模型文件)

本文深入解析MOSFET高频响应中的内部电容效应,通过LTspice仿真工具详细展示如何提取模型参数并优化高频特性。从栅极相关电容到结电容的物理本质,再到实战案例中的开关损耗分析和频率响应扫描,提供全面的设计优化方法,帮助工程师有效应对高速开关电路中的电容挑战。

weixin_33725722的博客 390

LeetCode第33题:Search in Rotated Sorted Array(Java详解)

Search in Rotated Sorted Array Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e., [0,1,2,4,5,6,7] might become [4,5,6,7,0,1,2]). You are given a ta...

WangHuanToBeBest 499

Calibre LVS 问题解析

LVS常见问题与解决办法

m0_61544122的博客 2万+

仿真学习系列(四十九):Sigrity仿真之电容库制作

在高速电路设计中,电源完整性(PI)是确保系统稳定、可靠运行的关键因素。随着电子产品对性能的要求不断提升,PDN(电源分配网络)的设计与优化变得尤为重要。为了确保电源网络在高速工作状态下不会引发电压波动和信号干扰,我们需要在设计中精确地选择电容器进行优化,而电容库的制作则是这一过程的核心。 OptimizePI作为一个强大的电源完整性优化工具,能够帮助设计师根据不同的目标,批量进行PDN仿真,以得出最佳电容选择。

案例文章,高速信号 226

【LeetCode笔记】33. 搜索旋转排序数组(Java、二分法)

文章目录题目描述思路 & 代码 题目描述 值互不相同:不用考虑重复值情况(要不然比较麻烦) 思路 & 代码 重点在于保证O(logn)的时间复杂度 看成两个数组:前半段 & 后半段。根据两个数组的极值来判断 target 在哪个数组,再进行判断即可。 先一次二分,找到前半段、后半段的分界下标。 再一次二分,找到在某半段中的 target 注意:要考虑极端情况:在下标0处旋转,相当于没有旋转。 class Solution { public int search(in

只能说希望每日一更 220

机器翻译的评价标准:BLEU、ROUGE等指标说明及代码实现

机器翻译领域常用的自动评价指标主要包括BLEU、ROUGE、METEOR和COMET四大类。BLEU基于n-gram精确率和短句惩罚,ROUGE关注召回率,METEOR结合精确率和召回率并考虑同义词,COMET则利用预训练模型计算语义相似度。这些指标各有特点:BLEU适用于机器翻译,ROUGE对长句友好,METEOR更接近人工评分,COMET无需参考译文。代码实现上,sacrebleu、rouge-score等库提供了便捷的计算方式。新兴趋势包括基于BERT等模型的语义评估和大语言模型评估器,但传统指标仍占

数据知道的博客 9419

leetcode 33. Search in Rotated Sorted Array [medium][java]

Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e., [0,1,2,4,5,6,7] might become [4,5,6,7,0,1,2]). You are given a target value to search. If found in...

inkhk的博客 149

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

【LeetCode】 33. Search in Rotated Sorted Array 搜索旋转排序数组(Medium)(JAVA)

【LeetCode】 33. Search in Rotated Sorted Array 搜索旋转排序数组(Medium)(JAVA) 题目地址: https://leetcode.com/problems/search-in-rotated-sorted-array/ 题目描述: Suppose an array sorted in ascending order is rotated at...

qq_16927853的博客 197

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

LeetCode Top 100 Liked Questions 33. Search in Rotated Sorted Array(Java版; Medium)

welcome to my blog LeetCode Top 100 Liked Questions 33. Search in Rotated Sorted Array(Java版; Medium) 题目描述 概括一下就是在旋转数组中寻找target, 找到的话返回其索引, 没找到的话返回-1 Suppose an array sorted in ascending order is rota...

littlehaes的博客 152

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【LeetCode】 81. Search in Rotated Sorted Array II 搜索旋转排序数组 II(Medium)(JAVA)

【LeetCode】 81. Search in Rotated Sorted Array II 搜索旋转排序数组 II(Medium)(JAVA) 题目地址: https://leetcode.com/problems/search-in-rotated-sorted-array-ii/ 题目描述: Suppose an array sorted in ascending order is ro...

qq_16927853的博客 252

【LeetCode】解题33:Search in Rotated Sorted Array

LeetCode解题 33:Remove Duplicates from Sorted Array Problem 33: Remove Duplicates from Sorted Array [Easy]解题思路Solution (Java)修改过程 Problem 33: Remove Duplicates from Sorted Array [Easy] Given a sorted ar...

Fayedily的博客 255

LeetCode 33. Search in Rotated Sorted Array

一 题目 Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e.,[0,1,2,4,5,6,7]might become[4,5,6,7,0,1,2]). You are given a target value to search. If ...

bohu83的博客 226

【LeetCode】解题81:Search in Rotated Sorted Array II

LeetCode解题 81:Search in Rotated Sorted Array II Problem 81: Search in Rotated Sorted Array II [Medium]解题思路Solution (Java) Problem 81: Search in Rotated Sorted Array II [Medium] Suppose an array sorted...

Fayedily的博客 255

in the java search_LeetCode第[33]题(Java):Search in Rotated Sorted Array

题目:在翻转有序中搜索难度:Medium题目内容:Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.(i.e.,[0,1,2,4,5,6,7]might become[4,5,6,7,0,1,2]).You are given a target value...

weixin_33502772的博客 226

力扣LeetCode33(Java):搜索旋转排序数组

用最易懂的话分析算法,LeetCode33搜索旋转排序数组

weixin_43378573的博客 750

leetcode 33. 搜索旋转排序数组-java

二分模板整数数组 nums 按升序排列,数组中的值 互不相同。在传递给函数之前,nums 在预先未知的某个下标 k(0

qq_41810415的博客 551

LeetCode 33 — Search in Rotated Sorted Array(C++ Java Python)

题目:http://oj.leetcode.com/problems/search-in-rotated-sorted-array/ Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).

龙之梦 2513

LeetCode33 搜索旋转排序数组(Java实现)

LeetCode33 搜索旋转排序数组 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是 O(log n) 级别。 示例 1: 输入: nums = [4,5...

大白菜的博客 364

Leetcode--Java--33. 搜索旋转排序数组

题目描述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2] 。 给你 旋转后 的数组 nums 和一个

Sherlock的博客 469
上一篇: 【leetcode】31. (Medium)Next Permutation(JAVA)
下一篇: 【leetcode】35. (Easy)Search Insert Postion(JAVA)
AXIMI
博客等级 码龄10年 53粉丝 455原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值