209. 长度最小的子数组
滑动窗口就是一个动态变化的区间
如果窗口区域内元素之和 <target 就扩大窗口,反之就缩小窗口
其实还是类似于双指针的应用,只不过双指针被隐式调用
class Solution {
public int minSubArrayLen(int target, int[] nums) {
int result=Integer.MAX_VALUE;
int start=0;
int windowsLength=0;
int sum=0;
for (int i = 0; i < nums.length; i++) {
sum+=nums[i];
while (sum>=target){
windowsLength=(i-start+1);
result=result<windowsLength?result:windowsLength;
sum-=nums[start++];
}
}
return result==Integer.MAX_VALUE?0:result;
}
}
#算法刷题与整理/滑动窗口