leetcode剑指 Offer 11. 旋转数组的最小数字(二分查找)
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。
示例 1:
输入:[3,4,5,1,2]
输出:1
代码
class Solution {public int minArray(int[] numbers) {int left=0,right=numbers.length-1;if(numbers.length==1) return numbers[0];while (left<right){int mid=((right-left)>>1)+left;if(numbers[mid]<numbers[right])//旋转点在右边区间right=mid;else if(numbers[mid]>numbers[right])//旋转点在左边区间left=mid+1;else right--;//出现相等则缩小边界}return numbers[left];}
}
leetcode剑指 Offer 11. 旋转数组的最小数字(二分查找)相关推荐
- Leetcode 剑指 Offer 11. 旋转数组的最小数字 (每日一题 20210916)
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转, ...
- 《LeetCode力扣练习》剑指 Offer 11. 旋转数组的最小数字 Java
<LeetCode力扣练习>剑指 Offer 11. 旋转数组的最小数字 Java 一.资源 题目: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 给你一个可能存在 ...
- 【LeetCode】剑指 Offer 11. 旋转数组的最小数字
[LeetCode]剑指 Offer 11. 旋转数组的最小数字 文章目录 [LeetCode]剑指 Offer 11. 旋转数组的最小数字 一.遍历 二.二分法 总结 一.遍历 算法步骤: 遍历数组 ...
- 剑指 Offer 11. 旋转数组的最小数字 简单
剑指 Offer 11. 旋转数组的最小数字 题目 解题思路 方法(一)直接遍历法 方法(二)二分查找法 题目 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组 ...
- 剑指offer 11. 旋转数组的最小数字(很详细!)
剑指offer 11. 旋转数组的最小数字 题目 解题思路 代码 题目 解题思路 一开始,我们就能直接想到,数组找最小值,那么不轻轻松松直接遍历一遍,用一个变量记录最小值,然后直接返回不就完事了? 但 ...
- 【剑指 Offe】剑指 Offer 11. 旋转数组的最小数字
目录标题 算法汇总 题目 关键点 代码 1.解体方法 - 二分法 思路 代码 时间和空间复杂度 2.解题方法,如暴力法 思路 代码 时间和空间复杂度 算法汇总 以下是所有算法汇总,包括GitHub源码 ...
- 剑指offer——11.旋转数组的最小数字
题目: 题1:实现快速排序 题2:年龄排序问题. 题3:旋转数组的最小数字 知识点: 快速排序算法,参考:https://blog.csdn.net/shujuelin/article/details ...
- 剑指 Offer 11. 旋转数组的最小数字 LCOF
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转, ...
- 【双百解法】剑指 Offer 11. 旋转数组的最小数字
立志用最少的代码做最高效的表达 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如,数组 [3,4,5,1,2] 为 [1 ...
最新文章
- Xbox One 游戏欣赏: Xbox Fitness 太极拳游戏
- 【openssl】利用openssl完成X509证书和PFX证书之间的互转
- iOS 开发一定要尝试的 Texture(ASDK) 1
- ACL'21 | 弱标签的垃圾数据,也能变废为宝!
- Spring MVC+Mybatis 多数据源配置
- python-虚拟环境的作用
- 【目标检测】IoU、GIoU、DIoU、CIoU Loss详解及代码实现
- [UOJ386]鸽子固定器
- linux vi 替换字符串,Linux vi编辑器如何查找与替换关键字
- 通信工程专业英语词汇 通信工程 专业英语
- excel-自定义函数及使用
- 【恩智浦杯(飞思卡尔)全国大学生智能汽车竞赛】解读部分北科技术报告图像处理内容(点到为止)
- 回眸2020,展望2021
- PHP 文字生成透明图片
- 基于搜索的贝叶斯网络结构学习算法-K2
- iOS开发 音频合成,改变音轨音量,改变背景音乐音量,音频剪辑
- Excel——如何在多种分类下填充空白单元格
- ORA-04031: 无法分配 3840 字节的共享内存 (“shared pool“,“unknown object“,“sga heap(1,0)“,“kglsim object batch“)
- Bochs编程环境安装
- java cos和native cos的区别
热门文章
- 文件描述符与打开文件的关系
- SpringBoot与数据访问
- Python os 属性(便于跨平台开发)
- JS——实现短信验证码的倒计时功能(没有验证码,只有倒计时)
- PHP面向对象(三)
- ElasticSearch、Logstash和Kiabana三个开源工具。
- void Update ( ) 更新 void FixedUpdate ( )
- LoadRunner8.1破解汉化过程
- 搭建MSSM框架(Maven+Spring+Spring MVC+MyBatis)
- 基于SpringBoot的CodeGenerator