图论
- 握手引理
- Σ deg(v) = 2|E|
- 完全图
- |E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
- 正则图
- |E| = n·k/2
- 树与森林
- |E| = n − 1, |E| = n − c
- 树的叶子
- L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
- 欧拉
- 回路:所有顶点度数为偶数; 通路:恰有 2 个奇度顶点
- Kn 中的哈密顿回路
- (n − 1)!/2
- 迪杰斯特拉更新
- d(v) = min(d(v), d(u) + w(u, v))
- 长度为 L 的途径
- (Mᴸ)ij
方法
- 写出每个顶点的度数;所有度数之和等于边数的两倍。
- 对于欧拉问题,先检查图是否连通,再数一数奇度顶点的个数。
- 对于树,利用 n − 1 条边和握手引理。
- 对于迪杰斯特拉算法,保留一张暂定距离表,每一轮确定未确定顶点中距离最小的那个。
- 对于最小生成树,把边按权重排序,跳过每条会形成圈的边(克鲁斯卡尔算法),或者从一个起点出发扩展一棵树(普里姆算法)。