力扣面试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;
    }
}
相关推荐
小O的算法实验室29 分钟前
2026年KBS,赏金猎人优化算法+多无人机移动边缘计算与路径规划,深度解析+性能实测
算法·无人机·边缘计算
xlp666hub36 分钟前
深度剖析 Linux Input 子系统(3):从零写一个 Input 驱动,最详细手把手(附完整代码)
linux·面试
用户56715047102138 分钟前
OpenClaw 记忆管理系统技术文档
算法
Cosolar1 小时前
吃透这5种Agent模式,搞定智能体开发
人工智能·面试·全栈
935961 小时前
练习题53-60
算法·深度优先
霖大侠1 小时前
Wavelet Meets Adam: Compressing Gradients forMemory-Efficient Training
人工智能·深度学习·算法·机器学习·transformer
骑龙赶鸭1 小时前
java开发项目中遇到的难点,面试!
java·开发语言·面试
AI成长日志2 小时前
【笔面试算法学习专栏】二分查找专题:力扣hot100经典题目深度解析
学习·算法·面试
lcreek2 小时前
流量优化之道:Ford-Fulkerson 最大流算法
算法·
我叫黑大帅2 小时前
Go 中最强大的权限控制库(Casbin)
后端·面试·go