线性代数总结

线性代数总结


一、矩阵快速幂的常用技巧


1、上三角优化。

假设矩阵为上三角矩阵,那么我们的枚举顺序可以优化:

这是原来的: F O R ( i , 1 , n ) F O R ( j , 1 , n ) F O R ( k , 1 , n ) FOR(i,1,n)FOR(j,1,n)FOR(k,1,n) FOR(i,1,n)FOR(j,1,n)FOR(k,1,n)

现在: F O R ( i , 1 , n ) F O R ( j , i , n ) F O R ( k , i , j ) FOR(i,1,n)FOR(j,i,n)FOR(k,i,j) FOR(i,1,n)FOR(j,i,n)FOR(k,i,j)

1 6 \frac{1}{6} 61的常数优化,很给力。

2、答案的向量优化。

多次题目的时候,矩阵快速幂的时间复杂度为 O ( T n 3 l o g n ) O(Tn^3logn) O(Tn3logn)

当矩阵固定时:

如果答案为一个行向量,则预处理 2 i 2^i 2i次幂。由于矩阵的结合律,我们可以维护该行向量,这样只需要 O ( n 2 l o g n ) O(n^2logn) O(n2logn)做一次回答。

3、累加贡献的矩阵。

如果是矩阵前缀和的形式: ∑ i = 1 n B i \sum_{i=1}^n B^i i=1nBi ,可以把矩阵扩域达到此目的。

构造方法如下:

构造 T = { A I 0 I } T=\begin{Bmatrix} A&I\\ 0&I \end{Bmatrix} T={A0II}

此时 T T T n + 1 n+1 n+1次前缀和,右上角的元素即为前缀和。

拓展:

右上角的 I I I可以换成列向量。

的话累计贡献就变成了相应的值。

典型例题:【清华集训】恐怖的奴隶主。

对于一个列向量 [ p 1 , p 2... p n ] [p1,p2...pn] [p1,p2...pn]表示状态为 1.. n 1..n 1..n时的贡献,则顺次相乘的累计结果恰好就是一次矩乘的贡献。


二、一些矩阵操作


矩阵的行列式

∣ A ∣ = ∑ P ( − 1 ) d ( P ) ∏ i = 1 n A [ i ] [ p i ] |A|=\sum_{P}(-1)^{d(P)}\prod_{i=1}^n{A[i][pi]} A=P(1)d(P)i=1nA[i][pi]

d ( P ) d(P) d(P)为逆序对数。

一个神奇性质: ∣ A B ∣ = ∣ A ∣ ∣ B ∣ |AB|=|A||B| AB=AB

逆矩阵

A可逆

<=> ∣ A ∣ ≠ 0 |A|≠0 A=0

<=> r ( A ) = n r(A) = n r(A)=n

<=> 齐次线性方程组 A X = 0 AX=0 AX=0 仅有零解

<=> 非齐次线性方程组$AX=b $有唯一解

<=> A的特征值不为0

矩阵的迹: t r ( A ) tr(A) tr(A)

主对角线元素和。

方程如果存在0系数行,常数项 > 0 >0 >0,则方程无解。

否则方程有无数解。

矩阵的秩: r ( A ) r(A) r(A)

表示线性无关的横行的极大数目。

齐次线性方程组

常数项全为 0 0 0的方程组。

r ( A ) < n r(A)<n r(A)<n,则方程有无数非 0 0 0解。

否则,方程为全 0 0 0解。

特征值和特征向量

通俗来讲,为一个向量 u ⃗ \vec{u} u 经过矩阵 A A A坐标转换后对应的向量与其本身相比方向不变,是其某个倍数。这种向量 u ⃗ \vec{u} u 即为 A A A的特征向量,倍数为特征值(特征值可以为0)。

特征值可能有多解。

也就是 A u ⃗ = λ u ⃗ A\vec{u}=\lambda\vec{u} Au =λu .

( A − λ I ) u ⃗ = 0 (A-\lambda I)\vec{u}=0 (AλI)u =0

特征向量有非零解,即 ( A − λ I ) u ⃗ = 0 (A-\lambda I)\vec{u}=0 (AλI)u =0有非零解,即 r < n r<n r<n,也即 d e t ( ( A − λ I ) u ⃗ ) = 0 det((A-\lambda I)\vec{u})=0 det((AλI)u )=0

特征值的求解方法:

上三角矩阵为对角线上的 n n n个元素。

特征值的性质:相加等于矩阵的迹,相乘等于行列式。

注意,特征值的求法不是将矩阵消成上三角矩阵后直接继承对角矩阵!

特征向量的求解方法:

由于我们只需要让其满足“非0解”这一个条件,所以在特定条件下可以做到单次 O ( n 2 ) O(n^2) O(n2)的复杂度:
当矩阵为上三角矩阵,且主对角线上元素互不相等时,可以得到:
对于每一个 B = ( A − λ i I ) B=(A-\lambda _iI) B=(AλiI),其 r ( B ) = n − 1 r(B)=n-1 r(B)=n1,必然存在非0解。故我们从大到小枚举,第 i i i位的值可以由 ( ∑ j > i b [ i ] [ j ] ) / b [ i ] [ i ] (\sum_{j>i}b[i][j])/b[i][i] (j>ib[i][j])/b[i][i]得到。当 b [ i ] [ i ] b[i][i] b[i][i]等于0时,把其设为 1 1 1即可。(必然只有一个)
经典例题:20200201 snow

性质: A m A^m Am的特征值即为 A A A的特征值的 m m m次。

相似矩阵:

定义:如果存在可逆矩阵 P P P,满足 P − 1 A P = B P^{-1}AP=B P1AP=B,则 A 、 B A、B AB相似。

相似矩阵的性质:

1. A A A B B B具有相同的特征值,特征多项式。但是没有相同的特征向量

2. A A A B B B有相等的秩、迹、行列式。

主要用于缩小矩阵规模,用对角矩阵代替原矩阵。

λ 1 , λ 2... λ n \lambda1,\lambda2...\lambda n λ1,λ2...λn B B B的n个特征值, ( x 1 , x 2... x n ) (x1,x2...xn) (x1,x2...xn)为其对应的特征向量,则:

A A A= d i a g ( λ 1 , λ 2... λ n ) diag(\lambda1,\lambda2...\lambda n) diag(λ1,λ2...λn)(对角矩阵)

P P P ( x 1 , x 2 , . . . x n ) (x1,x2,...xn) (x1,x2,...xn).

证明:

由定义来推, B P = P A BP=PA BP=PA

B = P − 1 A P B=P^{-1}AP B=P1AP

这样大大简化了运算,因为对角矩阵的乘法等于对应位置相乘。

四、易错点

1、注意矩阵没有交换律!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值