力扣209-长度最小的子数组

长度最小的子数组

题目链接

解题思路:

1.i,j维护一段区间,sum为这段区间和

2如果说sum区间和大于target,那么指针j就可以后移。直到区间和达到题目要求的范围

3.返回区间大小

c++ 复制代码
class Solution {
public:
    int minSubArrayLen(int target, vector<int>& nums) {
        int ans = INT_MAX;
        for(int i = 0,j = 0,sum = 0; i < nums.size();i++){
            sum += nums[i];
            while(sum - nums[j] >= target) sum -= nums[j++];
            if(sum >= target){
                ans = min(ans,i-j+1);
            }
        }
        if(ans == INT_MAX) ans=0;
        return ans;
    }
};
相关推荐
devilnumber20 分钟前
Java 递归算法 详解 + 核心要点 + 实战运用 + 避坑指南
java·开发语言·算法
‎ദ്ദിᵔ.˛.ᵔ₎2 小时前
双指针、滑动窗口、前缀和、二分查找 算法
算法
顾北顾3 小时前
多头注意力机制
人工智能·深度学习·算法
H178535090963 小时前
SolidWorks_基于草图的实体特征20_特征错误排查
算法·3d建模·solidworks
hujinyuan201603 小时前
2025年12月中国电子学会青少年机器人技术等级考试试卷(二级) 真题+答案
人工智能·算法·机器人
bIo7lyA8v4 小时前
算法复杂度评估的实验统计方法与可视化的技术8
算法
李老师讲编程4 小时前
中国电子学会图形化2020.12月Scratch三级考级题
算法·scratch·信息学奥赛·图形化编程·scratch素材
退休倒计时4 小时前
【每日一题】LeetCode 53. 最大子数组和 TypeScript
数据结构·算法·leetcode·typescript
旖-旎4 小时前
FloodFill(图像渲染)(1)
c++·算法·深度优先·力扣