摘要: 一、算法描述 本篇文章讲述的数据结构是单调队列,主要用于解决 滑动窗口 类问题的数据结构,即,在长度为 \(n\) 的序列中,求每个长度为 \(m\) 的区间的区间最值,时间复杂度 \(O(n)\)。 思路如下: 用一个队列 \(q[N]\) 来存储可能是答案的下标。 先判断是否滑出了窗口,如果滑出 阅读全文
posted @ 2023-11-29 20:24 grave-master 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 一、算法描述 本篇文章讲述的数据结构是单调栈,是一种和单调队列类似的数据结构(下一篇文章会讲到)。 单调队列主要用于 \(O(n)\) 解决滑动窗口问题,单调栈主要用于 \(O(n)\) 解决 NGE问题 (Next Greater Element),也就是对序列中的每个元素,找到上(下)一个比它大 阅读全文
posted @ 2023-11-29 19:24 grave-master 阅读(29) 评论(0) 推荐(0) 编辑