坚定不移的向前奔跑 才是我应该做的事情吧. 多思考一下 你会发现不一样的世界。
所谓矩阵树定理 用于一张无向图之上求出该图的所有生成树的个数。
在探究其之前我们先再次回顾一番 矩阵的基本定义 和一些比较基本的操作。
矩阵 有行有列 不过有两个定义 行向量 和 列向量 分别指某一行或某一列所形成的向量。(高维空间
线性空间 对于一个向量 w 如果w可以表示为 \(w=\sum_{v_i\in S}a_iv_i\) 那么我们认为w是可以被S中的向量线性组合出来的。
线性无关:如果一个向量空间中的每个向量偶不能表示成其他向量的组合,那么这个向量空间就是线性无关的。
基底:对于一个线性空间V来说 他的基底是其最大的一个线性无关子集。这句话三个重点:V的子集 最大 且线性无关。
我们不难推出 对于一个线性空间V来说其基底可能有不同 但是大小一定相同,可以尝试证明。
我们定义矩阵的加法:两个长宽相等的矩阵相加 即各个对应的位置上的元素相加。
定义 数乘 即一个数字和这个矩阵的各个位置上的数字相乘。
定义 转置 即矩阵的元素 沿其对角线对应翻转。
矩阵的乘法,这个不再赘述 大体上是第一个矩阵的所有行向量和 另外一个矩阵的列向量相乘。
其具有分配率:A(B+C)=AB+AC (B+C)A=BA+CA 结合律:ABC=A(BC)
显然不具有交换律
单位矩阵 I 一个n阶的单位矩阵为\(n*n\)的矩阵 \(A_{i,j}=[i=j]\)
单位矩阵 有用的地方就是 IA=AI=A;
逆矩阵 对于一个n阶的矩阵A 定义其逆矩阵为\(A^{-1}\) 所以存在 \(A\cdot A^{-1}=I\)
注意 :一个矩阵存在逆矩阵当且仅当其行向量所组成的向量空间是无关的。通俗一点任意一个行向量不能被其他的行向量所拼出来。
但是具体的细节我也并不是很清楚,所以这个结论还是先记下来比较好。
矩阵怎么求逆?我们知道 平常我们使用矩阵要不就是高斯消元 要不就是 矩阵快速幂。(十分老套的套路
矩阵有三种初等变换 我们发现 将一个矩阵初等变换成I矩阵并不难 但是此时相当于成上了 一个 \(A^{-1}\)
我们有 对应的矩阵 做相同的初等变换 意味着也乘上了一个 \(A^{-1}\)那么显然如果用I乘上这个矩阵我们就求出矩阵的逆啦。
最后我们的做法是 将A矩阵和I矩阵绑一块 对A进行初等变换形成I矩阵 此时也对I进行初等变换那么就形成\(A^{-1}\)这个逆矩阵了。
下面 到了重点了 矩阵的行列式:
一个矩阵A的行列式通常表示为 det(A) 或者 |A|.
首先我们定义一个集合 \(S_n\)表示所有长度为n的排列所构成的集合。
然后再定义一个 f(s) 表示排列s内的逆序对的数量,\(s_i\)表示排列s的第i个数。
sgn(s)=f(s)%2?1:-1 这里我写一个问号表达式。。大体上表达的意思是 这个排列的逆序对为奇数个的话就是sgn(s)为1 反正为-1
那么此时我们就可以给一个矩阵A的行列式下达定义了 其为 \(|A|=det(A)=\sum_{s\in S}sgn(s)\Pi_{i=1}^{n}a_{i,s_i}\)
注意这里的s还是还是1~n的一个排列。继续往下 是和行列式有关的东西 不过今天的主体是矩阵树定理这里不再过多赘述。。
矩阵树定理:
对于n个点m条边的无向图 该图同时没有自环 令一个n阶的方阵D为该图的度数矩阵,对于D来说 满足:\(d_{i,j}=i==j?deg(i):0\)
其中deg(i)表示连向点i的边的数量。即i点的入度。
同时对于一张n个点m条边额无向图无自环,令一个n阶方阵A为该图的邻接矩阵 对于A来说满足:\(a_{i,j}=[(i,j)\in E]\)
令一张n个点m条边的无自环无向图的n阶拉普拉斯方阵为L 有 L=D-A.
定理:对于一张n个点m条边的无自环无向图来说 其拉普拉斯矩阵为L 我们将n阶方阵L去掉任意一行及一列得到了一个n-1阶的方阵\(L_T\)
这张图的生成树数量为det(L). 证明:自证很难,不再赘述。
如何求解行列式 按照我们上述的定义来看 行列式的求解需要搞排列 计算逆序对什么的 实际上求解行列式快速的方法还是高斯消元。
我们把L 进行初等变换 变成上三角矩阵 然后此时对角线的乘积即为生成树的数量 在消的时候避免掉精一般采用辗转相除法进行消元。
注意 交换两行的时候 行列式的值注意变号。
这里 再次说明一下 求出行列式时的一些小细节:(暂时还不知道为啥,也不想研究为啥。因为 因为 我真的搞不懂是为啥
首先再次定义一下一个方阵 注意是方阵的行列式 存在一个上三角/下三角的方阵的行列式是其对角线之积。
特别的 单位方阵的行列式为1
对于一方阵其一行/一列乘以k 行列式乘k 对于进行初等变换的话 行列式不变。
对于一个矩阵交换其两行/两列 行列式变号
推论 一个矩阵两行或两列成比例行列式为0 这也就是我们所说的 此时不是线性无关的了。
最后有可能的是 一个对角线上的值为0 此时说明不是线性无关的了 那么 行列式的值为0
就这么多。
原文地址:https://www.cnblogs.com/chdy/p/12337529.html