合集-数据结构
摘要:二叉搜索树(Binary Search Tree,BST)可以 O(log n) 地完成一些修改和查询操作。
阅读全文
摘要:二叉堆是一种能够 O(log n) 时间插入或删除一个元素,并 O(1) 查询序列最值的数据结构。
阅读全文
摘要:本文介绍单点修改区间查询,区间修改单点查询,区间修改区间查询的三类树状数组。
阅读全文
摘要:动态开点线段树、权值线段树、标记永久化、可持久化线段树等。
阅读全文
摘要:降维。 P5490 【模板】扫描线 & 矩形面积并 【学习笔记】扫描线 - 洛谷专栏。 离散化后线段树维护当前覆盖区间长度并计算答案。 需要注意的是线段树的叶子结点不能表示数轴上的一个点,要表示一段区间。所以可以令线段树上的 \([l,r]\) 表示实际上的 \([l,r+1]\) (离散化后)。
阅读全文
摘要:会一种即可。 比线段树多的功能: 区间翻转 插入/删除 \(\large\texttt{Treap}\) Treap 即 Tree + Heap。相比二叉搜索树,每个节点多维护一个随机数 \(pri\) 作为权值,并按照 \(pri\) 维护整棵树的堆的性质。这样可以避免复杂度退化。 板子: con
阅读全文
摘要:维护一个序列: 单点修改。 给定 \(x\),查询区间有多少个位置 \(i\) 满足 \(a_i=x\)。 线段树套 map,可以 \(O(\log)\)。哈希表?\(O(1)\)。 树状数组套 map: map<int,int> t[N]; int find(int x,int y){ // 查询
阅读全文
摘要:字典树(Trie)是一种用于操作字符串的树型结构,可以用来存储和查询字符串。
阅读全文
摘要:P4551 最长异或路径 求出每个点到根的异或和,插入 01-Trie 中。 U109923 [Codechef REBXOR]Nikitosh and xor 枚举分割点,差分预处理左右区间异或和。 P8511 [Ynoi Easy Round 2021] TEST_68 先求出全局最优,找到其路
阅读全文

浙公网安备 33010602011771号