技术栈

33. 搜索旋转排序数组

dotJunz2023-10-10 15:57

33. 搜索旋转排序数组

转化为两次二分。

java 复制代码
class Solution {
    public int search(int[] nums, int target) {
        int l = 0, r = nums.length - 1;

        // 找到分隔点,大于nums[0]的最后一个数(最大的数)
        while(l < r){
            int mid = l + r + 1 >> 1;
            if(nums[0] > nums[mid]) r = mid - 1;
            else l = mid;
        }

        if(nums[0] > target) r = nums.length - 1;
        else l = 0;

        // 在有序数组中找目标值
        while(l < r){
            int mid = l + r + 1 >> 1;
            if(nums[mid] > target) r = mid - 1;
            else l = mid;
        }

        return nums[l] == target ? l : -1;
    }
}
上一篇:Java中的Servlet
下一篇:基于PHP+laravel+vue自主研发的医院手术麻醉信息系统源码
相关推荐
Frostnova丶
20 小时前
【算法笔记】数学知识
笔记·算法
吴可可123
20 小时前
AutoCAD 2016与2014二次开发关键差异
算法
雨白
21 小时前
哈希:以时间换空间的算法实战
算法
San813_LDD
1 天前
[数据结构]LeetCode学习
数据结构·算法·图论
x13870285957
1 天前
c语言排雷游戏(基础版9*9)
c语言·算法·游戏
sheeta1998
1 天前
LeetCode 每日一题笔记 日期:2026.06.06 题目:2196. 根据描述创建二叉树
笔记·算法·leetcode
小欣加油
1 天前
leetcode994 腐烂的橘子
数据结构·c++·算法·leetcode·bfs
QuZero
1 天前
Guava Cache Deep Dive
java·后端·算法·guava
随意起个昵称
1 天前
线性dp-LIS题目4(A Twisty Movement)
算法·动态规划
热门推荐
01【AI】2026 年具身智能模型和世界模型总结02GitHub 镜像站点032026 年 AI 编程工具终极横评:Cursor vs Claude Code vs Copilot vs Windsurf04Codex 下载安装指南:Windows 和 macOS 官方版下载052026 AI 编程工具终极实战指南:Cursor vs Claude Code vs Copilot,开发者该怎么选?06【踩坑记录 | 第一篇】微软商店无法使用时,如何手动安装 OpenAI Codex?附`.msix`文件系统错误解决方法07CC-Switch & Claude 基于 Linux 服务器安装使用指南08Agnes AI 全模态 API 免费实测报告:文生图 + 文生视频完整测试09CC-Switch 下载、安装与使用配置指南【2026.5.29】10AI科技热点日报 | 2026年6月1日