生成树计数问题
给一副n个节点的无向图G,求一个包含n-1条边的边集使得边集的边构成一颗树,问这样的边集的数量。
矩阵树定理
以下我们都不对重边与自环进行讨论。
实际上,即使有重边矩阵树定理仍然是正确的。
先定义度数矩阵D,是一个n*n的矩阵。
Di,i=节点i的度数,对于i不等于j,Di,j=0。
再定义邻接矩阵A,也是一个n*n的矩阵。
i与j有边相连就有Ai,j=1否则Ai,j=0。
最后定义基尔霍夫矩阵C=D-A。
那么,Ci,i=i的度数,对于i不等于j,若i与j间有边相连则Ci,j=-1否则Ci,j=0。
为了方便一些萌新,讲讲行列式吧。
我们都知道一个n*n矩阵a的行列式的定义:
∑b是一个n的排列(−1)b的逆序对个数∗Πni=1ai,bi