滑动窗口的最大值 暴力解法和队列解法的实现

给定一个数组Array和一个滑动窗口的大小,输出以数组形式表现的滑动窗口中的最大值,

每次滑动窗口向前移动一个单位。

暴力解法:

/*
 * @lc app=leetcode.cn id=239 lang=javascript
 *
 * [239] 滑动窗口最大值
 */

// @lc code=start
/**
 * @param {number[]} nums
 * @param {number} k
 * @return {number[]}
 */
var maxSlidingWindow = function(nums, k) {
    if(nums.length ===0 ){
        return []
    }
    if( k === 1){
        return nums
    }
    let resArr = []
    var len = nums.length;
    for(let i =0 ;i<= len-k;i++){
        let max= Number.MIN_SAFE_INTEGER; //最小的number数
        for(let j = i ; j<i+k;j++){
            max = Math.max(nums[j],max);            
        }
        resArr.push(max);
    }
    return resArr;
};
未通过测试样例,超出时间限制。

  

posted @ 2021-05-31 16:51  TangTaue  阅读(58)  评论(0编辑  收藏  举报