首页 > 其他分享 >Matrix-Tree 定理

Matrix-Tree 定理

时间:2024-02-03 10:44:06浏览次数:25  
标签:ddots tau Matrix 定理 Tree vmatrix cdots 行列式 vdots

不会线性代数。


行列式

定义

对一个 \(n\times n\) 的矩阵 \(A\),其 \(n\) 阶行列式写作 \(\mathrm{det}(A)\) 或 \(|A|\),定义为

\[\mathrm{det}(A)=|A|=\sum_{p}(-1)^{\tau(p)}\prod_{i=1}^{n}a_{i,p_i} \]

所有的 \(p\) 形成 \(1\) 到 \(n\) 的全排列,\(\tau(p)\) 表示排列 \(p\) 的逆序对个数。


排列的奇偶性

  • 规定若 \(\tau(p)\) 为奇数,则 \(p\) 是一个奇排列,否则是一个偶排列。

  • 奇排列与偶排列在 \(n(n\geq2)\) 阶排列中的出现次数相同。

  • 对于排列 \(p\),仅交换其中 \(2\) 个元素,其余不变,得到一个新的排列,该操作称为对换。

  • 一次对换会改变排列的奇偶性。

  • 一个排列可通过若干次对换使其元素严格递增,对换次数奇偶性与原排列奇偶性相同。


性质

线代秒了。害。

  • 矩阵转置后行列式值不变。(\(A\rightarrow A^{T}:a_{i,j}\rightarrow a_{j,i}\))

即证 \(\displaystyle \sum_{p}(-1)^{\tau(p)}\prod_{i=1}^{n}a_{i,p_i}=\sum_{p}(-1)^{\tau(p)}\prod_{i=1}^{n}a_{p_i,i}\)

则 \((-1)^{\tau(p)}=(-1)^{\tau(p')}\),其中 \(p'_{p_i}=i\)。

后者即按权值排序后下标的逆序对数,有 \(\tau(p)=\tau(p')\),得证。

于是所有对行满足的性质,对于列而言也满足,因为将矩阵转置后,原来的列操作等价于转置后的行操作。

  • 行列式的行(列)所有元素等比例变化,则行列式等比例变化。

\[\begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ \vdots&\vdots&\ddots&\vdots \\ ka_{i,1}&ka_{i,2}&\cdots&ka_{i,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{n,1}&a_{n,2}&\cdots&a_{n,3} \end{vmatrix}=k\times \begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{i,1}&a_{i,2}&\cdots&a_{i,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{n,1}&a_{n,2}&\cdots&a_{n,3} \end{vmatrix} \]

列上同理。这是显然的。

  • 将行列式某行(列)的值拆为两部分,行列式求和后与原行列式值相等。

\[\begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ \vdots&\vdots&\ddots&\vdots \\ b_{i,1}+c_{i,1}&b_{i,2}+c_{i,2}&\cdots&b_{i,n}+c_{i,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{n,1}&a_{n,2}&\cdots&a_{n,n} \end{vmatrix} = \begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ \vdots&\vdots&\ddots&\vdots \\ b_{i,1}&b_{i,2}&\cdots&b_{i,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{n,1}&a_{n,2}&\cdots&a_{n,n} \end{vmatrix} + \begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ \vdots&\vdots&\ddots&\vdots \\ c_{i,1}&c_{i,2}&\cdots&c_{i,n} \\ \vdots&\vdots&\ddots&\vdots \\ a_{n,1}&a_{n,2}&\cdots&a_{n,n} \end{vmatrix} \]

这个也是简单的。

  • 交换行列式两行(列),行列式值反号。

相当于交换原排列的两位置,\(\tau(p)\) 奇偶性改变,易知行列式值反号。

  • 若行列式两行(列)成比例,则行列式值为 \(0\)。

先将比例提出,交换两行(列),行列式值不变且反号,可知行列式值为 \(0\)。

  • 将矩阵的一行(列)的值全部乘一个常数加到另一行(列)上,行列式值不变。

这个也是简单的。


行列式求值

  • 模数为质数

观察上三角方针 \(A=\begin{vmatrix} a_{1,1}&a_{1,2}&\cdots&a_{1,n} \\ 0&a_{2,2}&\cdots&a_{2,n} \\ \vdots&\vdots&\ddots&\vdots \\ 0&0&\cdots&a_{n,n} \end{vmatrix}\),容易发现 \(\displaystyle \mathrm{det}(A)=\prod_{i=1}^{n}a_{i,i}\),只需将原行列式变成一个与其值相同的上三角方针即可。

利用行列式的性质,高斯消元即可。时间复杂度 \(O(n^3)\)。

  • 一般情况

此时不能直接算 \(\dfrac{a_{j,i}}{a_{i,i}}\) 了。

考虑辗转相除,每次将第 \(j\) 行消去即 \(a_{j,i}\leftarrow a_{j,i}\bmod a_{i,i}\) 后交换两行(变号),直至 \(a_{j,i}=0\)。

在辗转相除过程中可以做到取模。

辗转相除是 \(O(\log V)\) 的,于是时间复杂度 \(O(n^3+n^2\log V)\)。

标签:ddots,tau,Matrix,定理,Tree,vmatrix,cdots,行列式,vdots
From: https://www.cnblogs.com/SError0819/p/18004412

相关文章

  • 修塔(gcd+裴蜀定理)
    第3题   修塔查看测评数据信息有编号1~n的n个塔,除了两个塔a和b是好的不用修以外,其他都需要重修。james和jordan展开修塔比赛,规则是轮流修,每次可以修第j+k或j-k号塔,其中j和k是已经修好的任意两个塔,如果不能修塔,就输了。给出n,a,b,从james开始,问最后谁赢了。 输入......
  • 伪随机数(gcd+裴蜀定理)
    第2题   伪随机数查看测评数据信息一个生成伪随机数的函数,seed(a+1)=[seed(a)+STEP]%MOD,为了能产生0~MOD-1的所有数,需要设定合适的STEP和MOD。例如,STEP=3,MOD=5,产生0,3,1,4,2,这是正确的设定;若STEP=15,MOD=20,只能产生0,15,10,5,这是错误的设定。 输入格式 ......
  • 数论-裴蜀定理
    原文 如果a与b均为整数,则存在整数x和y满足ax+by=(a,b)。由定理6容易证明正确性。 下面用扩展欧几里得算法(exgcd)求出满足ax+by=(a,b)的一个特解。例如:a=99,b=78,令d=(a,b)=(99,78)=3,求99x+78y=3的一个特解。在调用exgcd的时候,从后往前依次构造......
  • 费马小定理
    费马小定理如果\(p\)是质数,则对任意整数\(a\),有\[a^p\equiva(\bmod\p)\Rightarrow\gcd(a,p)=1\]前提:\(p\)是质数\(gcd(a,p)=1\)证明:有数列\(S=\{1,2,3,\cdotsp-1\}\),将\(S\timesa\Rightarrow\{a,2a,3a,\cdots,(p-1)a\}\)\[(S\timesa)\bmod\......
  • CF620E New Year Tree
    CF620ENewYearTree题意:给出一棵n个节点的树,根节点为1。每个节点上有一种颜色ci​。m次操作。操作有两种:1uc:将以u为根的子树上的所有节点的颜色改为c。2u:询问以u为根的子树上的所有节点的颜色数量。1<=c<=60。由于c的范围,可以用一个整数来表示每棵子......
  • Java 中的HashSet 和 TreeSet
    HashSetHashSet集合:无序不可重复方法HashSet集合的元素实际上是放到HashMap集合的Key中importjava.util.HashSet;importjava.util.Set;/**HashSet集合:无序不可重复**/publicclassHashSetTest{publicstaticvoidmain(String[]args){//演示一......
  • CF620E New Year Tree 题解
    题目链接:CF或者洛谷这题很简单,看到颜色数,HH的项链?树,树上的HH的项链?带修,树上的镜中的昆虫?\(c_i\le60\),噢,easy了。考虑一类信息,表示有和无,对于某种颜色来讲,\(0/1\)表示无或者有,而或运算让我们从小区间的有无情况反映到大区间的有无情况。一种暴力的想法,为每种颜色建立一棵有......
  • [数论学习笔记01]完系/同余最短路/费马小定理/扩欧/中国剩余定理
    #[数论学习笔记01]完系/同余最短路/费马小定理/扩欧/中国剩余定理###每日蒟蒻小故事(1/1)蒟蒻带了一本崭新的笔记本到S组.他发现这一节课居然在学习数论."听不懂,求讲解!"蒟蒻说.大佬邪魅一笑,并未理会.蒟蒻只能一边听着老师的讲解,一边努力地记着笔记."什么是完全剩余系......
  • [王崧-数论01]从自然数到算数基本定理
    $$\color{indigo}\large\text{[王崧-数论01]从自然数到算数基本定理}$$ $\large\mathbb{Part\01}\text{自然数,归纳和最小数原理}$$\text{1.1自然数}$$\mathbb{N_1=\{1,2,3,...\}}$$\mathbb{N_0=\{0,1,2,...\}}$$\mathbb{Z=\{0,\pm1,\pm2,\pm3...\}}$$\text{“道生一,一......
  • Lucas 定理
    Lucas定理,一般用于求某组合数对某质数取模的值,即\(\binom{n}{m}\bmodp\)。一般来说,这种东西有一堆求法。\(n,m\)小的话可以直接递推,\(p>n\)可以根据定义\(\binom{n}{m}=\frac{n!}{m!(n-m)!}\)预处理阶乘和阶乘的逆元求。但是如果\(p\len\),阁下又当如何应对?此时你......