浅析RMQ问题 + 练习题总结(区间最值查询)
引言
最值查询RMQ,信手拈得俱天成(方便自己copy模板。。。)
RMQ概念
就是在一个给定的区间(不能修改)内,求任意 left 到 right 的这子区间内的最大值,对于这种问题,一般会用线段树或者ST表解决,但如果这个查询的次数极大,线段树就会显得乏力,所以就了解一下ST表的求解。
求解思路
用ST表求解这类问题,起建表时间 O(n*log(n)) 查询时间 O(1) ,速度挺不错的。
首先我们定一个数组 L[ i ][ j ] 表示从第 i 位开始往后 连续 个数的最大值
那么这个就会有两个部分,一个是从 i 到 i+-1,另一个是 i+