第239题:滑动窗口最大值

给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k
个数字。滑动窗口每次只向右移动一位。

返回滑动窗口中的最大值。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/sliding-window-maximum

在这里插入图片描述

  • 1.暴力搜索
class Solution {
    
     public int[] maxSlidingWindow(int[] nums, int k) {
    
     
	int len = nums.length; 
	if (len * k == 0) 
		 return new int[0];
 		 int [] win = new int[len - k + 1];
 		 //遍历所有的滑动窗口
 		 for (int i = 0; i < len - k + 1; i++) {
    
    
 		 int max = Integer.MIN_VALUE; 
 		 //找到每一个滑动窗口的最大值 
 		  for(int j = i; j < i + k; j++) {
    
     
 		  	max = Math.max(max, nums[j]); 
 		  }
 		  win[i] = max; 
 		  }
 		  return win; 
 		  }
 } 

猜你喜欢

转载自blog.csdn.net/qq_43078445/article/details/107622494