leetcode209_长度最小的子数组

要求某个连续的区间内的元素值总和>=S .

思路:滑动窗口:本质上是一种双指针法。

(1)初始化left = right = 0;

(2)left不动,right移动,扩大窗口,直至符合要求;

(3)right不动,left移动,缩小窗口,直至不符合要求;

(4)重复(2)和(3),直至right到达末尾。

代码:

cpp 复制代码
class Solution {
public:
    int minSubArrayLen(int target, vector<int>& nums) {
        int result = nums.size() + 1;
        int sum = 0;
        for(int i = 0, j = 0; j < nums.size(); j++){
            sum += nums[j];
            while(sum >= target){
                result = min(result, j - i + 1);
                sum -= nums[i];
                i++;
            }

        }
        return result == nums.size() + 1? 0 : result;
        }
};
相关推荐
YGGP3 分钟前
【Golang】LeetCode 1143. 最长公共子序列
算法·leetcode
Han.miracle3 分钟前
基于 SpringBoot + jQuery 实现留言板功能
java·spring boot·spring·java-ee
Mcband4 分钟前
Java 三方 JSON 比对
java·开发语言·json
wanghowie8 分钟前
02.04.02 Reactor 实战教程:响应式编程从入门到精通
java·reactor
出门撞大运10 分钟前
HashMap详解
java
Swift社区12 分钟前
LeetCode 459 - 重复的子字符串
算法·leetcode·职场和发展
byzh_rc13 分钟前
[算法设计与分析-从入门到入土] 图遍历
算法·深度优先
青云交14 分钟前
Java 大视界 -- 实战|Elasticsearch+Java 电商搜索系统:分词优化与千万级 QPS 性能调优(439)
java·spring boot·elasticsearch·性能优化·搜索系统·容器化部署·母婴电商
Wang153015 分钟前
Java的面向对象
java
!chen16 分钟前
Spring Boot Pf4j模块化开发
java·spring boot·spring