剑指 Offer II 008. 和大于等于 target 的最短子数组

在这里插入图片描述

简单,就是一个滑动窗口,随便往前往后滚即可。

class Solution {
    
    
    public int minSubArrayLen(int target, int[] nums) {
    
    
        if(nums.length==0) return 0;
            
            int i=0,j=0;
            int sum = 0;
            int min = Integer.MAX_VALUE;
            while(j<nums.length){
    
    
                sum = sum + nums[j];
                while(sum>=target){
    
    
                    min = Math.min(min,j-i+1);
                    sum = sum-nums[i];
                    i++;
                }
                j++;
            }
            return min == Integer.MAX_VALUE? 0:min ;
    }
}

猜你喜欢

转载自blog.csdn.net/qq_37772958/article/details/121802392