leetcode209算法————滑动窗口可以用来解决一些查找满足一定条件的连续区间的性质(长度等)的问题。由于区间连续,因此当区间发生变化时,它可以将嵌套的循环问题,转换为单循环问题,从而减少了重复计算,降低了时间复杂度。类似于“请找到满足xx的最x的区间(子串、子数组)的xx”这类问题都可以使用该方法进行解决。例1. 给定一个整数数组,计算长度为 'k' 的连续子数组的最大总和。输入:a[]={100,200,700,400}k=2。输出:1100。解释:700+400=1100暴力法: C++:

```cpp

double func(vector& a,int k) {

int n=a.size();

int sum=0;

int maxsum=0;

for(int i=0; i<n-1; i++) {

  for(int j=i+1; j<n; j++) {

    sum=a[i]+a[j];

    maxsum=max(sum,maxsum);

  }

}

return (double)maxsum;

}

```

Java: 时间复杂度:O(k*n)滑动窗口法:当k=2时,设置窗口大小为2,窗口里的值的和保