题解 | #滑动窗口的最大值#

滑动窗口的最大值

http://www.nowcoder.com/practice/1624bc35a45c42c0bc17d17fa0cba788

function maxInWindows(num, size)
{
    // write code here
    let len = num.length
    if (len < size || size === 0) return ''
    let q = []
    let res = []
    for (let i = 0; i < len; i++) {
        while (q.length && num[i] >= num[q[q.length - 1]]) {
            q.pop()
        }
        q.push(i)
        while (q[0] <= i - size) {
            q.shift()
        }
        if (i >= size - 1) res.push(num[q[0]])
    }
    return res
}
module.exports = {
    maxInWindows : maxInWindows
};
全部评论

相关推荐

02-08 20:56
已编辑
南京工业大学 Java
在等offer的比尔很洒脱:我也是在实习,项目先不说,感觉有点点小熟悉,但是我有点疑问,这第一个实习,公司真的让实习生去部署搭建和引入mq之类的吗,是不是有点过于信任了,我实习过的两个公司都是人家正式早搭好了,根本摸不到部署搭建的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务