矩阵树定理

Posted fzl194

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了矩阵树定理相关的知识,希望对你有一定的参考价值。

引用:https://blog.csdn.net/Marco_L_T/article/details/72888138

1、无向图

一个图的邻接矩阵G:对于无向图的边(u,v),G[u][v]++,G[v][u]++

一个图的度数矩阵D:对于无向图的边(u,v),D[u][u]++,D[v][v]++;

而通过这两个矩阵就可以构造出图G的基尔霍夫矩阵:C=D-G.

Matrix Tree定理:将图G的基尔霍夫矩阵去掉第i行和第i列(i可以取任意值,可以证明所得到的结果相同),得到(n-1)*(n-1)的矩阵,

                                  对这个矩阵进行行列式的值求解,abs(det(A))即为图G的生成树个数。

求解矩阵行列式的时候,计算常数k时为了避免精度丢失,可以通过计算逆元进行求解(不需要取模时,mod一个大质数即可).

2、有向图

树形图:以i点为根节点的树形图有(n-1)条边,从i节点出发可以到达其他所有(n-1)个节点.

定义: 有向图的邻接矩阵G:对于有向图的边(u,v),G[u][v]++.

              有向图的度数矩阵D:对于有向图的边(u,v),D[v][v]++.

              尤其需要注意的是:有向图的度数矩阵指的是一个点的入度,而不是出度。

              而有向图的基尔霍夫矩阵的构造方式是一模一样的:C=D-G.

有向图Matrix Tree定理:

             将有向图G的基尔霍夫矩阵去掉第i行和第i列,得到(n-1)*(n-1)的矩阵,

             对这个矩阵进行行列式的值求解,abs(det(A))就是以i为根的树形图的个数。

 

以上是关于矩阵树定理的主要内容,如果未能解决你的问题,请参考以下文章

初学矩阵树定理

算法Matrix - Tree 矩阵树定理 & 题目总结

矩阵树定理

浅谈矩阵树定理

Matrix-Tree 定理(基尔霍夫矩阵树定理)

Matrix-Tree 定理(基尔霍夫矩阵树定理)