代码
public class Solution {
public int[] MaxSlidingWindow(int[] nums, int k) {
int startIndex=0;
List<int> temp=new List<int>(nums),result=new List<int>();
while(startIndex+k<=nums.Length)
{
result.Add(temp.GetRange(startIndex,k).Max());
startIndex++;
}
return result.ToArray();
}
}
思路
创建两个list,一个为原数组的复制,另一个储存结果
startIndex作为窗口中第一个数的下标 while循环中每次取以startIndex开头,k为长度的list的最大值加入到结果list中,然后startIndex+1
最后返回结果list的复制数组