力扣面试150 长度最小的子数组 滑动窗口

Problem: 209. 长度最小的子数组

参考题解

滑动窗口

Java 复制代码
class Solution {
    public int minSubArrayLen(int target, int[] nums) {
        int n = nums.length;
        int ans = n + 1;
        int sum = 0; // 子数组元素和
        int left = 0; // 子数组左端点
        for (int right = 0; right < n; right++) { // 枚举子数组右端点
            sum += nums[right];
            while (sum >= target) { // 满足要求
                ans = Math.min(ans, right - left + 1);
                sum -= nums[left++]; // 左端点右移
            }
        }
        return ans <= n ? ans : 0;
    }
}
相关推荐
傅科摆 _ py17 分钟前
DP,贪心,堆和栈,二分力扣复习
开发语言·python·算法
Lichee2040 分钟前
招行Java 面试知识点梳理:Spring 事务、锁、线程池、集合
java·面试
Shaoshing1 小时前
LeetCode100 42.接雨水
java·算法·leetcode
域限奇点访客1 小时前
用AI生成问卷的网站怎么选?看题目录入结构、题型映射和生成后的校验
算法
aiautotools1 小时前
Claude Code MCP 怎么配:命令、scope 与避坑
面试
soft_hub12 小时前
海外会议怎么用录音APP翻译会议内容
面试·职场和发展
考研保研资料分享2 小时前
2025生物信息跨保浙大:四校考核、文献读译与材料准备
面试
文丑颜不良啊2 小时前
LeetCode1261~1280题目解析
java·leetcode
not coder2 小时前
一文讲通--从树到红黑树
数据结构·算法
octopus_c2 小时前
C++ 入门
开发语言·c++·算法