摘要: ST 表 ST 表是用于解决 可重复贡献问题 的数据结构。 ST 表可以做到 $O(n\log n)$ 预处理,$O(1)$ 回答每个询问。但不支持修改操作。 基于倍增思想,我们考虑如何求出区间最大值。可以发现,如果按照一般的倍增流程,每次跳 $2^i$ 步的话,询问时的复杂度仍旧是 $O(\log 阅读全文
posted @ 2023-09-18 15:39 tsqtsqtsq 阅读(28) 评论(0) 推荐(0)
摘要: 堆 性质 从二叉堆的结构说起,它是一棵二叉树,并且是完全二叉树,每个结点中存有一个元素(或者说,有个权值)。 堆性质:父亲的权值不小于儿子的权值(大根堆)。同样的,我们可以定义小根堆。本文以大根堆为例。 由堆性质,树根存的是最大值(getmax 操作就解决了)。 操作 插入 插入操作是指向二叉堆中插 阅读全文
posted @ 2023-09-18 15:26 tsqtsqtsq 阅读(43) 评论(0) 推荐(0)
摘要: Treap 引入 Treap 是一种弱平衡的二叉搜索树。它同时满足二叉搜索树和堆的相关性质。从某种意义上讲:$$ \texttt{Treap}\approx\texttt{Tree}+\texttt{heap} $$ 前置知识 二叉搜索树 二叉搜索树是一种二叉树的树形数据结构,其定义如下: 空树是二 阅读全文
posted @ 2023-09-18 14:39 tsqtsqtsq 阅读(46) 评论(0) 推荐(0)