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

目录

一、题目介绍

二、算法原理

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;
}

相关推荐
董董灿是个攻城狮4 小时前
AI视觉连载8:传统 CV 之边缘检测
算法
怒放吧德德6 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆7 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌10 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊11 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang11 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
AI软著研究员11 小时前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish11 小时前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
Ray Liang12 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
颜酱12 小时前
理解二叉树最近公共祖先(LCA):从基础到变种解析
javascript·后端·算法