LeetCode 209 长度最小的子数组(滑动窗口)

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录
LeetCode 209 长度最小的子数组(滑动窗口)

给定一个含有 n 个正整数的数组和一个正整数 target 。

找出该数组中满足其总和大于等于 target 的长度最小的

子数组

numsl, numsl+1, ..., numsr-1, numsr ,并返回其长度。如果不存在符合条件的子数组,返回 0 。

示例 1:

输入:target = 7, nums = 2,3,1,2,4,3

输出:2

解释:子数组 4,3 是该条件下的长度最小的子数组。

示例 2:

输入:target = 4, nums = 1,4,4

输出:1

示例 3:

输入:target = 11, nums = 1,1,1,1,1,1,1,1

输出:0

for循环里面遍历的是子数组的终止位置,在通过while循环来找子数组的起始位置,直到找到最优解

java 复制代码
	public int minSubArrayLen(int target, int[] nums) {
        int i = 0;
        int result = Integer.MAX_VALUE;
        int sum = 0;
        for(int j = 0; j < nums.length; j++){
            sum += nums[j];
            while(sum >= target){
                sum -= nums[i];
                int subLen = j - i + 1;
                result = Integer.min(result, subLen);
                i++;
            }
        }
        return result == Integer.MAX_VALUE ? 0 : result;
    }
相关推荐
新鲜势力呀8 分钟前
PHP 定时任务系统实战:从 Cron 混乱执行到任务调度中心 + Redis队列 + 失败重试
android·java·redis
蒲公英eric9 分钟前
Python工具链与LaTeX排版:把兵器配齐
人工智能·python·算法·数学建模·数学建模工具
别动我齐刘海28 分钟前
简历技术栈全面复习总结
c++·人工智能·深度学习·学习·tcp/ip·算法·rpc
hetao173383740 分钟前
2026-10-03 hetao1733837 的刷题记录
c++·算法
(Charon)1 小时前
【C/C++面试】手写内存池:从空闲链表到内存申请与释放
java·开发语言·windows
EatFan1 小时前
Spring Boot 4 迁移避坑清单:Jackson 3、starter 拆分与最低 JDK 口径核对(含若依/芋道/CRMEB 升级对照)
java·数据库·spring boot·spring boot 4·java 21·jakarta ee 11·jackson 3
栖凤1 小时前
多 Agent 工作流实践:从单打独斗到协同作战
java·linux·服务器
一木 之林1 小时前
DeepSeek Agent 开发
java·前端·人工智能
这张生成的图像能检测吗1 小时前
(论文速读)Object-Driven Multi-Layer Scene Decomposition:从单张图像恢复遮挡后的多层场景
人工智能·算法·计算机视觉·rgb-d·场景分解
嘎嘎风1 小时前
MiniMind 学习笔记之 01 一个 64M 的模型,凭什么像 ChatGPT?
算法