DOKICODE
书房

常用数据结构

这份题单练的是给问题挑对容器。前缀和与差分数组不用循环就能回答区间问题,堆让最小值随时可取,并查集则记录哪些元素属于同一组。

13 个章节先从常用的枚举技巧开始,接着依次是前缀和、差分数组、栈、队列与双端队列、堆、字典树、并查集、树状数组与线段树,最后是伸展树、分块(莫队)、离线算法和其他进阶数据结构。它是阶段一体量最大的题单,建议一章一章慢慢做。

366 道题难度分 1161–311213 章节
进入书房

想有人陪你把这份题单做完吗?登录后进入书房,女主角会一次递给你一道题。

零、常用枚举技巧

一、Prefix Sum

二、Difference Array

§2.2 2D Difference Array

题目难度分
2536. 子矩阵元素加 11583
850. 矩形面积 II2236
2132. 用邮票贴满网格图2364

三、Stack

§3.6 Two Stacks

题目难度分
2296. 设计一个文本编辑器1912

四、Queue

§4.3 Deque

题目难度分
2810. 故障键盘1851

五、Heap (Priority Queue)

§5.3 第 K 小/大

题目难度分
264. 丑数 II1818
23. 合并 K 个升序链表1818

六、Trie

§6.3 Trie优化 DP

题目难度分
140. 单词拆分 II1725

§6.4 0-1 Trie (XOR Trie)

题目难度分
1707. 与数组中元素的最大异或值2359
1938. 查询最大基因差2503

七、Union-Find

§7.6 带权Union-Find(边权Union-Find)

题目难度分
399. 除法求值1725

八、Fenwick Tree和Segment Tree

§8.6 Persistent Segment Tree

题目难度分
3762. 使数组元素相等的最小操作次数2497

§8.7 ST 表(Sparse Table)

题目难度分
3501. 操作后最大活跃区段数 II2941

九、Splay Tree

§9.1 基础

题目难度分
2296. 设计一个文本编辑器1912

十、Sqrt Decomposition

§8.1 Sqrt Decomposition

题目难度分
3655. 区间乘法查询后的异或 II2454

§8.3 其他

题目难度分
3234. 统计 1 显著的字符串的数量2557

专题:Offline Algorithm

专题:比较复杂的题目

如果你把难度上限设在 1600 或 1900,这里较难的题会先放进挑战列表,女主角会先征求你的意见再提高上限。

难度分来自 zerotrac 的 LeetCode 竞赛评分。部分题目没有 zerotrac 分数,会标记为“未评分”。

进入书房