代码随想录一刷-day3
T209 长度最小子数组
核心:滑动窗口思想,如何用一个for循环达到两个循环的效果
for(int j=0;j<num.size();j++){
sum+=nums[j];//外层for循环内负责将窗口结束的坐标++;
while(sum>=target){
window_length=j-i+1;
result=min(result,window_length);
sum-=nums[ i++ ];
}
}
最后return result 注意这个result需要比较是否跟初值相同,不相同才返回得到的result
T904 水果成篮
题目转化:只含有两个数字的最长子数组
重点理解 i,j,ii
思路:一共两个数字,即可将第一个数字用t1 ,第二个t2存储,然后往后遍历,如果遍历到最后则break;
T76 最小覆盖子串 hard
思路:建立两个哈希表,一个对t ,一个滑动对s