首页 > 其他分享 >LeetCode 239. 滑动窗口最大值

LeetCode 239. 滑动窗口最大值

时间:2023-07-14 13:13:52浏览次数:44  
标签:nums int res 最大值 back vector 239 LeetCode

class Solution {
public:
    vector<int> maxSlidingWindow(vector<int>& nums, int k) {
        deque<int> q;
        vector<int> res;
        for(int i=0;i<nums.size();i++)
        {
            //删除滑出窗口的元素
            while(q.size()&&i-q.front()>=k)    q.pop_front();
            //插入新元素
            while(q.size()&&nums[q.back()]<=nums[i])
                q.pop_back();
            q.push_back(i);
            if(i>=k-1)
                res.push_back(nums[q.front()]);
        }
        return res;
    }
};

标签:nums,int,res,最大值,back,vector,239,LeetCode
From: https://www.cnblogs.com/tangxibomb/p/17553416.html

相关文章

  • LeetCode 剑指 Offer 13. 机器人的运动范围
    题目链接:LeetCode剑指Offer13.机器人的运动范围题意:地上有一个m行n列的方格,从坐标[0,0]到坐标[m-1,n-1]。一个机器人从坐标[0,0]的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机......
  • [leetcode每日一题]7.13
    931. 下降路径最小和中等281相关企业给你一个 nxn 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径 的 最小和 。下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(即位于正下方或者......
  • 求js数组最大值
    1letarr=[1,2,3,4,5]23letmax=arr.reduce((prev,cur)=>{4returnMath.max(prev,cur)5})67console.log(max)//expectedoutput:5 //找出数组中最大/小的数字constnumbers=[5,6,2,3,7];//使用Math.min/Math.max以及apply函数......
  • [LeetCode] 2542. Maximum Subsequence Score
    Youaregiventwo 0-indexed integerarrays nums1 and nums2 ofequallength n andapositiveinteger k.Youmustchoosea subsequence ofindicesfrom nums1 oflength k.Forchosenindices i0, i1,..., ik-1,your score isdefinedas:Thes......
  • leetcode-20. 有效的括号
    https://leetcode.cn/problems/valid-parentheses/20.有效的括号给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。示例1......
  • LeetCode —— 子串
    560. 和为K的子数组(哈希表)官方题解:https://leetcode.cn/problems/subarray-sum-equals-k/solution/he-wei-kde-zi-shu-zu-by-leetcode-solution/假设left到right下标的子数组和为knums[left...right]=kpreSum[right]-preSum[left]=kpreSum[left]=preSum[rig......
  • Leetcode - 动态规划总结(必看!!!)
     一、labuladong动态规划模板思路wiki:https://labuladong.gitee.io/algo/di-ling-zh-bfe1b/dong-tai-g-1e688/题目: 动态规划模板思路: 二、我自己如何理解【状态】【选择】 以714题目《最佳时机去买卖股票+手续费》为例子:1.确定【状态】--寻找原问题和子问题中,......
  • LeetCode 剑指 Offer 11. 旋转数组的最小数字
    题目链接:LeetCode剑指Offer11.旋转数组的最小数字题意:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。给你一个可能存在 重复 元素值的数组 numbers ,它原来是一个升序排列的数组,并按上述情形进行了一次旋转。请返回旋转数组的最小元素。例如,数组 [......
  • LeetCode 剑指 Offer 12. 矩阵中的路径
    题目链接:LeetCode剑指Offer12.矩阵中的路径题意:给定一个 mxn二维字符网格 board和一个字符串单词 word。如果 word存在于网格中,返回true;否则,返回false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元......
  • LeetCode 234. 回文链表
    classSolution{public:ListNode*reverse(ListNode*head)//翻转以head为头节点的链表{if(!head||!head->next)returnhead;autoa=head,b=head->next;while(b){autoc=b->next;b->next=a;......