zoukankan      html  css  js  c++  java
  • 矩阵树定理学习笔记

    不好意思本垃圾只会记结论

    (largecolor{pink}{link1})

    (largecolor{pink}{link2})

    还是瞎bb两句了

    行列式

    对矩阵

    [A=egin{bmatrix}a_{1,1}&a_{1,2}&a_{1,3}&dots&a_{1,n}\a_{2,1}&a_{2,2}&a_{2,3}&cdots&a_{2,n}\vdots&vdots&vdots&ddots&vdots\a_{n-1,1}&a_{n-1,2}&a_{n-1,3}&dots&a_{n-1,n}\a_{n,1}&a_{n,2}&a_{n,3}&dots&a_{n,n}end{bmatrix} ]

    它的行列式定义为

    [det A=sum (-1)^ra_{1,p_1}a_{2,p_2}cdots a_{n,p_n} ]

    其中(p)(1sim n)的排列,(r)是这个排列的逆序对数

    求行列式

    • [A=egin{bmatrix}a_{1,1}&a_{1,2}&a_{1,3}&dots&a_{1,n}\0&a_{2,2}&a_{2,3}&cdots&a_{2,n}\vdots&vdots&vdots&ddots&vdots\0&0&0&dots&a_{n-1,n}\0&0&0&dots&a_{n,n}end{bmatrix} ]

      这样类似的上or下三角矩阵,有(det A=prod_{i=1}^n a_{i,i})

    • 交换矩阵的任意两行or两列,矩阵的行列式变为原来的相反数。

      • 可以从元素不变,逆序对改变说明

      推论:矩阵有两行or两列的元素一样,矩阵的行列式为(0)

    • 矩阵某行or某列全乘上(k),那么矩阵的行列式也乘上(k)

      推论:可以提取某行or某列的公因数

      推论:某两行或某两列成系数,行列式为(0)

    • 两个只有一行or一列不同的矩阵的行列式之和等于这一行or一列相加,其他不变元素的矩阵的行列式。

    • 如果把矩阵的某一行(列)加上另一行(列)的k倍,则行列式的值不变。

    • 于是我们可以使用高斯消元把矩阵削成三角形,然后直接求出来就行了。

      • (R)意义下做高斯校园还是用小数就可以了,最后输出(.0lf)
      • (mod)某些数的意义下,如果为质数比较好弄,如果不是质数,使用辗转相除法做,多一个(log),例题,小Z的房间
    • 一些可以用的好东西

      • 行列式等于它的任一行(列)的各元素与其对应的代数余子式乘积之和
      • 余子式:在(n)阶行列式中,把元素(a_{i,j})所在第(i)行和第(j)行划去后,留下的(n-1)阶行列式叫元素(a_{i,j})的余子式,记做(M_{i,j}),定义代数余子式为(A_{i,j}=(-1)^{i+j}M_{i,j})
      • 你可以用它来找一些特殊矩阵的规律,然后说不定可以找到行列式的简单求法。

    矩阵树定理

    • 定义一个无向图(G)的度数矩阵(D(G))(d_{i,i})为点(i)的度数,其余为(0)
    • 定义一个无向图(G)的邻接矩阵(A(G)),就是你不用前向星存边的那个存边矩阵。
    • 定义一个无向图(G)的基尔霍夫矩阵(C(G)=D(G)-A(G))
    • (G)的所有不同生成树个数等于其基尔霍夫矩阵的(n-1)阶主子式的行列式的值
    • 主子式:你把矩阵随便削一行和一列之后拼起来的矩阵。
  • 相关阅读:
    CPPFormatLibary提升效率的优化原理
    Unity4、Unity5移动平台多线程渲染在部分安卓手机上会造成闪退
    Hello World!
    Mac/IOS/linux获取当前时间包含微秒毫秒的代码
    插入图块闪烁问题的原因
    选择实体时的选项
    dataGridView 单元格添加combox checkbox
    交互拾取点时 右键取消 禁止出现点无效
    曲线上到指定点最近的点
    移除实体应用程序名(xdata)
  • 原文地址:https://www.cnblogs.com/butterflydew/p/10145462.html
Copyright © 2011-2022 走看看