其他分享
首页 > 其他分享> > [学习笔记] 矩阵树定理

[学习笔记] 矩阵树定理

作者:互联网

因为在临时抱佛脚,所以是没有证明的~

0. 前置芝士

0.1. 拉普拉斯展开

对于行列式 \(D\),任意第 \(i\) 行(列同理)按下式展开的值与行列式值相等

\[\text{Value}=\sum_{j=1}^n (-1)^{i+j}\cdot a_{i,j}\cdot M_{i,j} \]

其中 \(M_{i,j}\) 是 \(a_{i,j}\) 的余子式。


一些闲话:这个可以用来推导 "轮状病毒" 一题中的递推式。

1. 矩阵树定理

1.1. 定理一

1.1.1. 内容

构造连通矩阵和度数矩阵。连通矩阵 \(A\) 的第 \(i\) 行第 \(j\) 列上的数字表示原无向图中 \(i,j\) 两点之间边的条数。度数矩阵 \(D\) 只有 \(D_{i,i}\) 有值表示点 \(i\) 的度数。定义 \(L=D-A\),无向图生成树的个数就是 \(L\) 去掉任意行任意列的矩阵的行列式。

1.1.2. 应用

例 1. 求无向图所有生成树边权乘积的和。

将度数矩阵变成与点邻接边的边权和,连通矩阵变成边的权值再应用矩阵树定理即可。

例 2. 求无向图必选某一条边的所有生成树个数。

我是伞兵,这都不会。简单容斥即可。

例 3. 用生成函数描述限制:\(\rm Link.\)

例 4. \(\text{[SDOI 2014] }\)重建

题目要求

\[\begin{align} \text{Ans}&=\sum_{T(V,E')}\left(\prod_{e\in E'}p_e\cdot \prod_{e\in E\setminus E'}(1-p_e) \right)\\ &=\sum_{T(V,E')}\left(\prod_{e\in E'}p_e\cdot \frac{\prod_{e\in E}(1-p_e)}{\prod_{e\in E'}(1-p_e)} \right)\\\ &=\prod_{e\in E}(1-p_e)\cdot \sum_{T(V,E')}\left(\prod_{e\in E'}\frac{p_e}{1-p_e} \right) \end{align} \]

1.2. 定理二

1.2.1. 内容

给出有向图和其中的一个点,求以这个点为根的生成外向树个数(外向树满足每个点有且仅有一条入边)。

构造连通矩阵和度数矩阵。连通矩阵 \(A\) 的第 \(i\) 行第 \(j\) 列上的数字表示有向图中 \(i\rightarrow j\) 的边的条数。度数矩阵 \(D\) 只有 \(D_{i,i}\) 有值表示点 \(i\) 的 入度。定义 \(L=D-A\),答案就是 \(L\) 去掉根所在的行和列的矩阵的行列式。

1.3. 定理三

1.3.1. 内容

给出有向图和其中的一个点,求以这个点为根的生成内向树个数。

构造连通矩阵和度数矩阵。连通矩阵 \(A\) 的第 \(i\) 行第 \(j\) 列上的数字表示有向图中 \(i\rightarrow j\) 的边的条数。度数矩阵 \(D\) 只有 \(D_{i,i}\) 有值表示点 \(i\) 的 出度。定义 \(L=D-A\),答案就是 \(L\) 去掉根所在的行和列的矩阵的行列式。

标签:度数,连通,cdot,定理,矩阵,笔记,行列式,prod
来源: https://www.cnblogs.com/AWhiteWall/p/14404119.html