最小子数组、最大子矩阵,快速了解滑动窗口

从暴力解法到滑动窗口。

从一道基础算法题快速了解滑动窗口,再一道竞赛题快速加深对滑动窗口的理解。

 长度最小的子数组

链接:https://leetcode.cn/problems/minimum-size-subarray-sum/description/

暴力解法:直接两层循环遍历出所有区间,取最小长度。结果会是超时的。

class Solution {    
    public int minSubArrayLen(int target, int[] nums) { 
        int res = nums.length + 1;  // 当然Integer.MAX_VALUE也可以,return判断改一下即可
        for (int i = 0,sum = 0; i < nums.length; i++) {
            for (int j = i; j < nums.length; j++) {
                sum += nums[j];
                if (sum >= target) {
                    res = Math.min(res, j - i + 1);
                    break; 
                }
             }
     

你可能感兴趣的:(算法,leetcode,数据结构,滑动窗口)