简单,就是一个滑动窗口,随便往前往后滚即可。
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 ;
}
}