首页课程小红花墙

算法进阶 · 小纸条

选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。

第 1 章30第 2 章30第 3 章30第 4 章30第 5 章30第 6 章30第 7 章30第 8 章30第 9 章30第 10 章30第 11 章30第 12 章30第 13 章30第 14 章30第 15 章30第 16 章30第 17 章30第 18 章30第 19 章30第 20 章30第 21 章30第 22 章30第 23 章30第 24 章30第 25 章10
题目+答案
第 1 页 · 正面(题目)
1路径压缩

压缩后查一次大概多快?

2按秩合并

不按秩合并可能出现什么?

3Kruskal 算法

遇到两端已连通的边为什么要跳过?

4Prim 算法

Kruskal 和 Prim 各适合什么图?

5最小生成树练习

动手写 Kruskal 版本。

6并查集的其它用途

判断加边后图是否成环,怎么用并查集?

7树的性质

给一张 n 个点 n-1 条边的连通图,它一定是树吗?

8树的直径

为什么两次搜索就够?

9树的重心

一条链的重心在哪?

10树形 DP 入门

这和普通 DP 有什么不同?

第 2 页 · 正面(题目)
11树形 DP:选或不选

状态该怎么定?

12树形 DP:转移

写出这两条转移。

13树上前缀和

这和数组前缀和的思路一样吗?

14最近公共祖先

树上两点距离怎么用它算?

15倍增求祖先

跳 13 步怎么拆?

16倍增求公共祖先

为什么跳到"不相遇"而不是"相遇"?

17图论建模

倒水问题怎么建模成图?

18状态图搜索

八数码的状态是什么?

19状态判重

为什么必须判重?

20双向广搜

为什么双向能快?

第 3 页 · 正面(题目)
21优先队列广搜

这说明什么?

22图论练习一

动手完成。

23图论练习二

这是什么算法?

24图论练习三

Kruskal 和 Prim 都试一遍。

25图论练习四

该用哪个算法?

26图论小结

给每样写一句适用场景。

27高级数据结构:堆

堆和排好序的数组比,优势在哪?

28堆的结构

小根堆的堆顶是什么?

29堆的上浮与下沉

为什么这两个操作是 log 级?

30堆的应用

求一百万个数里最大的十个,怎么用堆?

op599 课程