【二分法】旋转数组的最小数字

求解代码

对旋转数组来说,右子数组的数值整体更小,左子数组的数值整体更大。

数组的最小值一定是右子数组的第一个元素。

java 复制代码
public int minNumberInRotateArray (int[] nums) {
        if(nums.length==0){
			return 0;
		}

		int i=0;
		int j=nums.length-1;

		while(i<j){
			int mid = i+((j-i)>>1);
			if(nums[mid]>nums[j]){
				i=mid+1;
			}else if(nums[mid]<nums[j]){
				j=mid;
			}else{
				j--;
			}
		}

		return nums[i];
    }
相关推荐
碧海银沙音频科技研究院2 小时前
基于炬芯ATS3089X自研AEC声学回声消除算法
算法
通问AI3 小时前
在两台 Mac Studio 上跑 800B 模型:MLX + RDMA over Thunderbolt 实测与四道门选型法
算法
ZywOo6233 小时前
《算法竞赛进阶指南》0x03 前缀和与差分
算法
Scintilla_y3 小时前
DAY2 滑动窗口
算法·leetcode·散列表
lvwangshu3 小时前
笛卡尔树
算法·图论
026d233 小时前
状态信号只知“其然”不知“其所以然”:变工况机械故障诊断的物理盲区
算法
姜鱼问生3 小时前
备份和服务器在同一台机器上,等于没备份
算法·架构
姜鱼问生4 小时前
别再 chmod 777 了,用 ACL 给它开一扇窗
后端·算法·架构
YSL0701244 小时前
贪吃蛇小游戏---古法编程
数据结构·游戏程序
特立独行的猫a4 小时前
仓颉语言UI开发实战:我用仓颉写了个桌面版力扣
算法·leetcode·ui·tauri·仓颉·cj-tarui