当前位置: 首页 > article >正文

(leetcode算法题)239. 滑动窗口最大值

此题研究目标所在的窗口大小固定,窗口的边界并不一定是窗口内的最大值,所以可以通过一个双端队列的数据结构来维护

class Solution {
public:
    vector<int> maxSlidingWindow(vector<int>& nums, int k) {
        deque<int> dq;
        vector<int> ret;
        int n = nums.size();
        int l = 0, r= 0;
        while(r < n){
            if(r - l == k){
                if(dq.front() == nums[l]){
                    dq.pop_front();
                }
                ++l;
            }
            while(!dq.empty() && nums[r] > dq.back()){
                dq.pop_back();
            }
            dq.push_back(nums[r]);
            if(r - l == k - 1){
                ret.push_back(dq.front());
            }
            r++;
        }
        return ret;
    }
};


http://www.kler.cn/a/500878.html

相关文章:

  • 第432场周赛:跳过交替单元格的之字形遍历、机器人可以获得的最大金币数、图的最大边权的最小值、统计 K 次操作以内得到非递减子数组的数目
  • Mac——Docker desktop安装与使用教程
  • 在 Flownex 网络中创建传热元件
  • 【Oracle篇】深入了解执行计划中的访问路径(含表级别、B树索引、位图索引、簇表四大类访问路径)
  • 分布式一致性CAP与BASE理论、分布式一致性协议和算法——2PC、3PC 和 Paxos算法
  • MoMA: 基于多头注意力的动量对比学习知识蒸馏,用于组织病理学图像分析|文献速递-视觉大模型医疗图像应用
  • 安卓studio生成apk步骤
  • 有限元分析学习——Anasys Workbanch第一阶段笔记(9)带孔矩形板与L型支架案例的对称平面处理方案
  • 如何学习Vue设计模式
  • 应急响应之入侵排查(下)
  • VSCode 更好用的设置
  • 2025-1-9 QT 使用 QXlsx库 读取 .xlsx 文件 —— 导入 QXlsx库以及读取 .xlsx 的源码 实践出真知,你我共勉
  • el-date-picker 禁用一个月前、一个月后(当天之后)的时间 datetimerange
  • ssh链接飞牛NAS的时候出现WARNING提示无法正常登录!按照这个可以解决
  • 数据结构与算法之二叉树: LeetCode 700. 二叉搜索树中的搜索 (Ts版)
  • 【网络云SRE运维开发】2025第2周-每日【2025/01/10】小测-【第10章 ACL理论和实操考试】解析
  • Golang——channel
  • DS内排—堆排序
  • LeetCode 521最长特殊序列
  • 【STM32-学习笔记-3-】TIM定时器
  • 【C++开源库】Boost.Asio网络库使用介绍
  • 大模型训练(2):内存开销
  • 网络安全-网站协议请求报文(基础篇)
  • NVIDIA Clara平台助力医学影像处理:编程案例与实践探索(下)
  • Word表格内容批量写入Excel