int minx = 100001;
for(int i = 0; i < nums.size(); i++){
vector v;
int sum = nums[i];
v.push_back(nums[i]);
for(int j = i + 1; j < nums.size(); j++){
if(sum < target){
sum += nums[j];
v.push_back(nums[j]);
}else{
break;//当已经找到超过target的序列的时候 就可以跳出循环
}
}
if(sum >= target)
minx = min(minx,v.size());
}
if(minx == 100001)
return 0;
else
return minx;
}
};
(1):思路
思路:
1.滑动窗口方法,类似与双指针
2.先介绍滑动窗口的三要素
滑动窗口的起始位置,
窗口的范围大小
窗口的结束位置
3.在本题中,我们的起始位置是数组的开头,窗口的范围大小是我们累加的和,结束位置是我们的累加和大于target 的元素位置.
4.那么滑动窗口的精髓之处在于移动起始位置的指针,当我们统计到一个满足target的时候,我们将sum 剪去 nums[i++] (i是起始位置) ,那么就相当于我们向后移动一个元素
(2):上码
class Solution {
public:
int min (int a ,int b){
return a < b ? a : b;
}
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
学习分享,共勉
这里是小编拿到的学习资源,其中包括“中高级Java开发面试高频考点题笔记300道.pdf”和“Java核心知识体系笔记.pdf”文件分享,内容丰富,囊括了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。同时还有Java进阶学习的知识笔记脑图(内含大量学习笔记)!
资料整理不易,读者朋友可以转发分享下!
Java核心知识体系笔记.pdf
中高级Java开发面试高频考点题笔记300道.pdf
架构进阶面试专题及架构学习笔记脑图
Java架构进阶学习视频分享
题笔记300道.pdf**
[外链图片转存中…(img-Xn4CKwxK-1710974831271)]
架构进阶面试专题及架构学习笔记脑图
[外链图片转存中…(img-sII2Ay9O-1710974831271)]
Java架构进阶学习视频分享