当前位置: 首页 > article >正文

Leetcode—81. 搜索旋转排序数组 II【中等】

2025每日刷题(206)

Leetcode—81. 搜索旋转排序数组 II

在这里插入图片描述

实现代码

class Solution {
public:
    bool search(vector<int>& nums, int target) {
        int len = nums.size();
        int mid = len / 2;
        int i = 0, j = len - 1;
        // 闭区间
        // [i, j]
        while(i <= j) {
            mid = i + (j - i) / 2;
            if(nums[mid] == target) {
                return true;
            } 
            if(nums[i] == nums[mid] && nums[j] == nums[mid]) {
                i++;
                j--;
                // nums[i...mid] sorted
            } else if(nums[i] <= nums[mid]) {
                if(nums[i] <= target && target < nums[mid]) {
                    j = mid - 1;
                } else {
                    i = mid + 1;
                }
            } else {
                // nums[mid...j] sorted
                if(nums[mid] < target && target <= nums[j]) {
                    i = mid + 1;
                } else {
                    j = mid - 1;
                }
            }
        }
        return false;
    }
};

运行结果

在这里插入图片描述

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!


http://www.kler.cn/a/530875.html

相关文章:

  • 数据 类型
  • 队列—学习
  • 基于Spring Security 6的OAuth2 系列之八 - 授权服务器--Spring Authrization Server的基本原理
  • Chapter2 Amplifiers, Source followers Cascodes
  • 康德哲学与自组织思想的渊源:从《判断力批判》到系统论的桥梁
  • 笔灵ai写作技术浅析(四):知识图谱
  • web前端14--flex
  • 线程互斥同步
  • Axure PR 9 动效 设计交互
  • 软考论文万能模板
  • 2021版小程序开发5——小程序项目开发实践(1)
  • k8s二进制集群之ETCD集群部署
  • Altium Designer绘制原理图时画斜线的方法
  • opencv实现边缘模板匹配
  • 实验力学的记录
  • 蓝桥杯真题——小秘密(省模拟赛)
  • UE 不同类型蓝图类的区别(关卡蓝图 Component蓝图 Actor蓝图)
  • oracle:索引(B树索引,位图索引,分区索引,主键索引,唯一索引,联合索引/组合索引,函数索引)
  • 【Rust自学】19.5. 高级类型
  • 人工智能导论-第3章-知识点与学习笔记
  • 求职刷题力扣DAY34--贪心算法part05
  • 深入剖析 Bitmap 数据结构:原理、应用与优化策略
  • UE PlayerController、AIController
  • UE5 蓝图学习计划 - Day 9:数组与跨蓝图通信
  • 服务SDK三方新版中央仓库和私服发布详解
  • Java 网络原理 ③-NAT || DHCP