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;
        }
};
相关推荐
10岁的博客13 小时前
二维差分算法高效解靶场问题
java·服务器·算法
轻微的风格艾丝凡13 小时前
锂电池 SOC 估计技术综述:成熟算法、新颖突破与车企应用实践
算法·汽车
Codeking__13 小时前
动态规划算法经典问题——01背包问题
算法·动态规划
R-G-B13 小时前
归并排序 (BM20 数组中的逆序对)
数据结构·算法·排序算法
少许极端13 小时前
算法奇妙屋(十二)-优先级队列(堆)
数据结构·算法·leetcode·优先级队列··图解算法
百***935013 小时前
Tomcat报404问题解决方案大全(包括tomcat可以正常运行但是报404)
java·tomcat
qq_2813174714 小时前
kubernetes(k8s)-pod生命周期
java·容器·kubernetes
IT界的奇葩14 小时前
代码规范 spring-javaformat使用
java·spring·代码规范
披着羊皮不是狼14 小时前
多用户跨学科交流系统(4)参数校验+分页搜索全流程的实现
java·spring boot
kupeThinkPoem14 小时前
哈希表有哪些算法?
数据结构·算法