力扣面试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;
    }
}
相关推荐
jerryinwuhan24 分钟前
SVM案例分析
算法·机器学习·支持向量机
绝无仅有31 分钟前
大厂面试相关文章:深入技术面试中的核心知识点
后端·面试·架构
高山上有一只小老虎33 分钟前
购物消费打折
java·算法
绝无仅有34 分钟前
面试文章:网络协议与redis安全,https协议,TCP三次握手,四次挥手等面试经典问题
后端·面试·架构
郝学胜-神的一滴1 小时前
计算机图形中的法线矩阵:深入理解与应用
开发语言·程序人生·线性代数·算法·机器学习·矩阵·个人开发
m0_591338911 小时前
day8鹏哥C语言--函数
c语言·开发语言·算法
_OP_CHEN1 小时前
算法基础篇:(二)基础算法之高精度:突破数据极限
算法·acm·算法竞赛·高精度算法·oj题
一只老丸1 小时前
HOT100题打卡第30天——技巧
算法
Bi_BIT1 小时前
代码随想录训练营打卡Day38| 动态规划part06
算法·动态规划
手握风云-2 小时前
回溯剪枝的“减法艺术”:化解超时危机的 “救命稻草”(三)
算法·剪枝