前言
「 数据结构 」 和 「 算法 」 是密不可分的,两者往往是「 相辅相成 」的存在,所以,在学习 「 数据结构 」 的过程中,不免会遇到各种「 算法 」。
数据结构 常用的操作一般为:「 增 」「 删 」「 改 」「 查 」。基本上所有的数据结构都是围绕这几个操作进行展开的。
那么这篇文章,作者将用 「 十张动图 」 来阐述一种 「 一端插入 」「 两端删除 」 的数据结构
「 单调队列 」
![]()
![]()
单调队列的操作浓缩为以下一张图:
![]()
看不懂没有关系,我会把它拆开来一个一个讲,首先来看一下今天要学习的内容目录。
![]()
一、滑动窗口
1、引例
【例题1】给定一个长度为 n ( n ≤ 1 0 5 ) n(n \le 10^5) n(n≤10
本文详细介绍了单调队列的概念、性质及其在滑动窗口、动态规划优化和前缀和等问题中的应用。通过一系列实例解析,展示了如何利用单调队列在O(n)的时间复杂度内解决区间最值问题。文章还涵盖了FIFO队列和双端队列的基础知识,以帮助读者更好地理解单调队列的实现原理。
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



