http://www.cnblogs.com/tham/p/8038828.html 首先看一个问题。 给定一个数列,从左至右输出每个长度为\(k\)的数列段内的最小数和最大数(第一行输出每个区间 ...
以前一直以为这两个是很高级的东西,这段时间用到了才开始学,发现实际上非常简单 下面我们以单调队列为例进行讲解,单调栈自行类比 顾名思义 单调队列这个名字就指明了它的性质 单调性 我们来看一道例题 滑动窗口 题面在此不再赘述,大意就是有一个长度为 n 的数列,一个长度为 k 的窗口,输出窗口位于每个位置下的下的最大最小值 嗯,题目很好理解,st表或者线段树过的先别说话,我们来看看另一种方法 我们维护 ...
2018-09-09 16:44 0 1980 推荐指数:
http://www.cnblogs.com/tham/p/8038828.html 首先看一个问题。 给定一个数列,从左至右输出每个长度为\(k\)的数列段内的最小数和最大数(第一行输出每个区间 ...
单调队列是什么呢?可以直接从问题开始来展开。 Poj 2823 给定一个数列,从左至右输出每个长度为m的数列段内的最小数和最大数。 数列长度:\(N <=10^6 ,m<=N\) 解法①### 很直观的一种解法,那就是从数列的开头,将窗放上去,然后找到这最开始的k个数的最大值 ...
1、单调栈 单调栈是指一个栈内部的元素具有严格单调性的一种数据结构,分为单调递增栈和单调递减栈。 其具有以下两个性质: 1,满足栈底到栈顶的元素具有严格单调性。 2,满足栈的先进后出特性,越靠近栈顶的元素越后出栈。 元素进栈过程: 对于一个单调递增栈来说,若当前 ...
。那么同样,在这里谈到的话题也有类似特点。 先说一下单调队列吧! 单调队列, ...
单调栈 定义:内部元素满足单调性的栈。 用途:线性时间内处理出数组中每一个 \(i\) 左边/右边 第一个 大于/小于 \(a_i\) 的位置。 模板题:P5788 【模板】单调栈 题意:令 \(f(i)\) 为 \(i\) 右边第一个大于 \(a_i\) 的位置。输出 \(f(i ...
本篇博客转自我很久以前在洛谷上写的一篇博客,原地址:https://www.luogu.org/blog/ybwowen/dan-diao-dui-lie 单调队列是一种队列(废话) 其中队列的元素保证是单调递增或者是单调递减的 那么队首的元素不就是最小(或最大)的吗? 我们结合 ...
单调队列 概念 顾名思义,单调队列就是在队列的基础上,维护一个单调的序列。 性质 队列中的元素其对应在原来的序列中的顺序必须是单调递增的。 队列中元素的大小必须是单调递(增/减/自定义)。 先来一道模板题来感受一下单调队列的应用: 模板题:滑动窗口 题目 【题目描述 ...
写在前面 连着刷了 4 天 12 道单调队列,整理一下这些题的解法,找一找关于单调队列共性的东西。 一 Luogu 1725 琪露诺 dp 方程想起来比较简单,但是显然暴力转移会 T,考虑单调队列。 因为题目是要用 dp[i-k] 来更新 dp[i] ,所以单调队列在转移的时候 push ...