![](https://img-blog.csdnimg.cn/20201124211545775.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 77
数据元素+数据与数据之间的关系+数据操作的集合
weixin_50722238
这个作者很懒,什么都没留下…
展开
-
单调队列2020-11-24
单调队列一、原理:我们维护一个单调递减(增)的序列,每次新加的数字如果最小(大),放队尾,如果较大(小),就依次删队尾元素,找到它该在的位置。通过这个方式,我们使一个队列,始终有着目前的最大值(最小值)。http://poj.org/problem?id=2823题目大意:给n个数字,有一个大小为k的框,从左往右框数字,一共框n-k+1次,问每次框中数字的最大,最小值。解析:堆复杂度nlogn超时。通过这个序列来更新最大值,抹除左边出去的值,这个可以想到要用单调队列来解决。//G++超时,C++过原创 2020-11-24 21:33:36 · 55 阅读 · 0 评论 -
单调栈2020-11-24
单调栈一、分类:单调递增栈:单调递增栈就是从栈底到栈顶数据是从大到小单调递减栈:单调递减栈就是从栈底到栈顶数据是从小到大二、应用:三、举例:(1)http://acm.hdu.edu.cn/showproblem.php?pid=1506题目大意:给你一个直方图,告诉你各个条形矩形的高度,求基线对齐构成的矩形中最大的矩形的面积。解析:枚举对于每一个矩形,面积 = a[i]*(r-l-1),其中了,l,r是左右边界,找到左右边界是关键。#include <bits/stdc++.h&g原创 2020-11-24 21:10:11 · 80 阅读 · 0 评论