【算法】滑动窗口(一)-长度最小的子数组

目录

一、题目介绍

二、算法原理

1.排必然非结果情况

1.1.2区域

(1)预证区

(2)已证区

2.滑动窗口

三、提交代码


一、题目介绍

209. 长度最小的子数组 - 力扣(LeetCode)


二、算法原理

1.排必然非结果情况

1.1.2区域

(1)预证区

预证区排能确

(2)已证区

已证区排能确


2.滑动窗口

两指针排算情况 同向不退地 维护着 头尾同向滑动的窗口


三、提交代码

java 复制代码
public int minSubArrayLen(int target, int[] nums) {
    int n = nums.length, sum = 0, len = Integer.MAX_VALUE;
    for(int left = 0, right = 0; right < n; right++) {
        sum += nums[right]; //进窗口
        while(sum >= target) { //判断
            len = Math.min(len, right - left + 1); //更新结果
            sum -= nums[left++];
        }
    }
    return len == Integer.MAX_VALUE ? 0 : len;
}

相关推荐
拓恒技术7 小时前
无人机巡检AI算法的工程化落地:从需求到交付的5个核心环节
人工智能·算法·无人机
晨曦中的暮雨7 小时前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
怕浪猫7 小时前
Claude Code vs Codex:Computer Use 实现原理深度拆解
算法·面试·github
学长毕设8 小时前
基于SpringBoot的青少年编程学习平台系统-附源码
spring boot·学习·青少年编程
文丑颜不良啊9 小时前
LeetCode876~900题目解析
java·leetcode
罗西的思考9 小时前
AI 时代的 “房谋杜断”:如何培养能力、品味与判断力
人工智能·算法·机器学习
aloha_7899 小时前
Java 基础、集合、异常与 JUnit 5 速查
java·junit·sqlserver
淡海水9 小时前
07-02-源码-.NET Core GC分配路径
算法·unity·c#·.netcore·gc·1024程序员节
知守观10 小时前
设计模式实战:从真实老项目中看标准模板方法与工厂的落地
java·spring·设计模式
独隅10 小时前
Claude API 实战教程:从入门到完整项目
android·java·数据库·claude·claude code