JAVA练习340- 寻找旋转排序数组中的最小值 题目概览已知一个长度为n的数组预先按照升序排列经由1到n次旋转后得到输入数组。例如原数组nums [0,1,2,4,5,6,7]在变化后可能得到若旋转4次则可以得到[4,5,6,7,0,1,2]若旋转7次则可以得到[0,1,2,4,5,6,7]注意数组[a[0], a[1], a[2], ..., a[n-1]]旋转一次的结果为数组[a[n-1], a[0], a[1], a[2], ..., a[n-2]]。给你一个元素值互不相同的数组nums它原来是一个升序排列的数组并按上述情形进行了多次旋转。请你找出并返回数组中的最小元素。你必须设计一个时间复杂度为O(log n)的算法解决此问题。示例 1输入nums [3,4,5,1,2]输出1解释原数组为 [1,2,3,4,5] 旋转 3 次得到输入数组。示例 2输入nums [4,5,6,7,0,1,2]输出0解释原数组为 [0,1,2,4,5,6,7] 旋转 4 次得到输入数组。示例 3输入nums [11,13,15,17]输出11解释原数组为 [11,13,15,17] 旋转 4 次得到输入数组。提示n nums.length1 n 5000-5000 nums[i] 5000nums中的所有整数互不相同nums原来是一个升序排序的数组并进行了1至n次旋转来源153. 寻找旋转排序数组中的最小值 - 力扣LeetCode解题分析方法二分查找先进行一次二分令中间索引为 mid起始索引为 i结束索引为 j二分之后得到的两个子数组至少有一个时递增的那么当 nums[ i ] nums[ mid ] 且 nums[ mid ] nums[ j ] 时mid 到 j 一定是递增数组那么最小值一定在左边数组或为 nums[mid]当 nums[ i ] nums[ mid ] 且 nums[ mid ] nums[ j ] 时i 到 mid 一定是递增数组那么最小值一定在右边数组当 nums[ i ] nums[ mid ] nums[ j ] 时整个数组就是递增数组最小值就为 num[ i ]当 nums[ i ] nums[ mid ] nums[ j ] 时不可能存在这种情况时间复杂度O(logn)空间复杂度O(1)class Solution { public int findMin(int[] nums) { int n nums.length; int i 0, j n - 1, min nums[0]; while(i j) { int mid (i j) / 2; if (nums[mid] nums[i] nums[mid] nums[j]) { min Math.min(min, nums[mid]); j mid - 1; } else if (nums[mid] nums[i] nums[mid] nums[j]) { i mid 1; } else if (nums[i] nums[mid]) { min Math.min(min, nums[i]); break; } else { min Math.min(min, nums[j]); break; } } return min; } }

相关新闻

最新新闻

OpenCV实战:图像拼接、自动判分与目标提取技术解析

OpenCV实战:图像拼接、自动判分与目标提取技术解析

1. 项目概述计算机视觉技术正在深刻改变我们处理图像信息的方式。作为一名长期从事视觉算法开发的工程师,我发现OpenCV这个开源库在解决实际问题时展现出惊人的灵活性。今天我想通过三个典型场景——图像拼接、试卷自动判分和目标提取,带大家深入理解计算…

2026/7/24 13:27:46
大模型在输变配电工程评审中的落地实践——金曲AI评审技术方案解析

大模型在输变配电工程评审中的落地实践——金曲AI评审技术方案解析

在输变配电工程建设领域,传统人工评审模式存在流程繁琐、参数核对量大、规则适配性弱、人为误差率高等痛点。随着行业数字化转型推进,依托大语言模型赋能工程评审全流程,成为解决行业评审效率低、专业性参差不齐问题的关键方向。本文基于Deep…

2026/7/24 13:27:46
露易丝·海的诗歌18

露易丝·海的诗歌18

我带着爱意看待过去在我所处的无穷无尽的生命中,一切都完美、完整、完全。我们每一个人,包括我自己,都以对我们来说意义非凡的方式体验着生命的富足和充实。现在,我带着爱意看待过去,选择从过去的经历中学习。没有对错…

2026/7/24 13:27:46
细粒度动作质量评估:从技术原理到应用实践

细粒度动作质量评估:从技术原理到应用实践

1. 项目概述:重新定义动作评估的维度 "以人为中心的细粒度动作质量评估"这个课题第一次引起我的注意是在三年前的一次康复训练项目中。当时我们团队需要为术后患者设计一套居家康复动作监测系统,但市面上所有动作识别方案都只能判断"是否…

2026/7/24 13:27:46
Anthropic 机器人实验:Agent 能力为何取决于接口抽象层

Anthropic 机器人实验:Agent 能力为何取决于接口抽象层

谈机器人 Agent 时,开发团队很容易先问“该选哪个大模型”。Anthropic 7 月 9 日发布的机器人研究给出了一个更接近工程现实的答案:同一个模型看起来强不强,很大程度取决于它通过什么接口接触物理世界。让模型直接输出关节力矩、让它写控制器…

2026/7/24 13:27:46
开源模型可商用吗?闭源模型能私有化吗?——从GPLv3、Apache 2.0到SLA条款的法律-技术双维穿透解析(合规红线预警版)

开源模型可商用吗?闭源模型能私有化吗?——从GPLv3、Apache 2.0到SLA条款的法律-技术双维穿透解析(合规红线预警版)

更多请点击: https://intelliparadigm.com 第一章:开源模型可商用吗?闭源模型能私有化吗?——从GPLv3、Apache 2.0到SLA条款的法律-技术双维穿透解析(合规红线预警版) 开源模型的商用可行性绝非“只要下载…

2026/7/24 13:22:46

月新闻