码迷,mamicode.com
首页 > 其他好文 > 详细

再探矩阵树定理

时间:2020-02-20 22:20:49      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:逆序对   交换   邻接   就是   推出   逆序   位置   比例   计算   

坚定不移的向前奔跑 才是我应该做的事情吧. 多思考一下 你会发现不一样的世界。

所谓矩阵树定理 用于一张无向图之上求出该图的所有生成树的个数。

在探究其之前我们先再次回顾一番 矩阵的基本定义 和一些比较基本的操作。

矩阵 有行有列 不过有两个定义 行向量 和 列向量 分别指某一行或某一列所形成的向量。(高维空间

线性空间 对于一个向量 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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!