力扣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;
    }
};
相关推荐
凌肖战7 分钟前
力扣上刷题之C语言实现(数组)
c语言·算法·leetcode
秋夫人33 分钟前
B+树(B+TREE)索引
数据结构·算法
梦想科研社1 小时前
【无人机设计与控制】四旋翼无人机俯仰姿态保持模糊PID控制(带说明报告)
开发语言·算法·数学建模·matlab·无人机
Milo_K1 小时前
今日 leetCode 15.三数之和
算法·leetcode
Darling_001 小时前
LeetCode_sql_day28(1767.寻找没有被执行的任务对)
sql·算法·leetcode
AlexMercer10121 小时前
【C++】二、数据类型 (同C)
c语言·开发语言·数据结构·c++·笔记·算法
Greyplayground1 小时前
【算法基础实验】图论-BellmanFord最短路径
算法·图论·最短路径
蓑 羽1 小时前
力扣438 找到字符串中所有字母异位词 Java版本
java·算法·leetcode
源代码:趴菜1 小时前
LeetCode63:不同路径II
算法·leetcode·职场和发展
儿创社ErChaungClub2 小时前
解锁编程新境界:GitHub Copilot 让效率翻倍
人工智能·算法