暂且叫它-\"蒙伪树\"-吧-

痞子三分冷 提交于 2019-12-03 05:16:19

今天我看到ooo聚聚画线段树,但是ta画的不是很好,于是本人饶有兴趣的研究了那棵无聊的树。

但是它并不满足树的性质,于是命名为伪树。

为了防止太弱和别的巨型数据结构撞名导致尴尬,于是又挂了自己$id$的一部分,叫"蒙伪树"($\text{Miemeng's Erroneous Tree}$)可以简称$\text{MET}$。

其实是样辉三角?

我伪了。

先来张图:

1

有啥用:

显然没啥用,可以用上面多的要命的节点维护区间最值,或是一些其他的信息。

时间复杂度:

建树:$O(N^2)$

查询:$O(1)$

修改:$O(N)$

所以它是暴力,恩?

空间复杂度:

$O(N^2)$

(为什么我不开二维数组?)

一些乱七八糟的性质:

1>

2

当我们将$LCA$的编号标记为两个数取平均值后的值,这样每一个值就控制了一些点。

这样就可以建一棵新树。

3

别问我为什么又画了一个(上面的图太丑了,而且我把它丢了)

这样就变成前缀和啦,所以我们可以得出结论,前缀和是对$\text{MET}$的优化(其实$\text{MET}$是对大部分数据结构的劣化(捂脸

于是对前缀和进行位运算优化,得到树状数组。

然后我们发现里面有很多点是无效的,于是删除一些节点。

4

发现它(像)是线段树。

于是我们又得出结论,线段树也是对$\text{MET}$的优化。

最后我扯一句,如果用倍增优化可以把$\text{MET}$优化成$\text{ST}$表。

好,终于扯完了。

(话说这么一个暴力我扯一篇博客??)

导图:

5

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!