Skip to main content

行列式

Summary

把方阵映射到一个数的函数,几何上是线性变换的体积缩放因子,为零当且仅当行(列)向量线性相关。从二、三阶对角线法则讲到排列逆序数与 n 阶的按排列定义,给出转置不变、交换变号、倍加不变等性质。展开部分是余子式、代数余子式与拉普拉斯展开;计算技巧含化三角形、加边法、范德蒙德行列式、行和相等提公因子、三对角行列式递推。最后用克拉默法则给出方阵唯一解的闭式,并连起行列式、可逆性、秩与方程组解的存在性。

参考资料​

引入​

行列式(Determinant)是把一个 方阵 映射到一个 数 的函数,记为 det⁡A\det A 或 ∣A∣|A|。

不要把它当成一堆符号的机械组合。行列式有非常清晰的几何含义:它衡量一个线性变换把 空间「放大」了多少倍。

  • 二阶行列式 = 两个行(列)向量张成的 平行四边形的有向面积。
  • 三阶行列式 = 三个向量张成的 平行六面体的有向体积。
  • nn 阶行列式 = nn 个向量张成的 nn 维 平行多面体的有向超体积。

「有向」是关键:面积/体积可以是负的,符号记录了变换有没有把空间 翻面(改变定向)。比如二维里若把一对基向量的左右关系对调,面积就变号。

由此立刻能看懂一条最重要的事实:

det⁡A=0  ⟺  n个行(列)向量线性相关\det A=0\iff n\text{个行(列)向量线性相关}

因为体积为 00 意味着这些向量被压扁到了更低维的子空间里,张不出「饱满」的 nn 维体。这正是后面判断矩阵 可逆性 的核心。

tip

记住一句话就抓住了主线:行列式是线性变换的「体积缩放因子」。 它告诉你单位立方体经过变换 AA 之后变成的图形,体积是原来的 ∣det⁡A∣|\det A| 倍,而符号告诉你定向有没有翻转。det⁡A=0\det A=0 就是「被压扁了」。

几何意义​

设 AA 把单位正方形的两条边 e⃗1,e⃗2\vec e_1,\vec e_2 分别送到列向量 a⃗1,a⃗2\vec a_1,\vec a_2,那么这两个像向量张成的平行四边形面积恰好是 ∣det⁡A∣|\det A|。三维同理,得到平行六面体体积。

由此能 不算一个数 就理解行列式的几条性质:

  • 把某一列翻倍,对应的平行四边形沿那个方向拉长一倍,面积也翻倍 —— 所以某一行(列)的公因子能提到行列式外。
  • 交换两列,相当于把图形「翻面」,定向反转,面积变号。
  • 给某一列加上另一列的若干倍(错切,shear),平行四边形被「推斜」但底和高不变,面积不变 —— 这正是「某行加另一行的 kk 倍行列式不变」。
  • 两列相同(或成比例),平行四边形退化成一条线段,面积为 00。

乘法性质也变得显然:连续做两个变换 A,BA,B,体积缩放因子相乘,所以:

det⁡(AB)=det⁡A⋅det⁡B\det(AB)=\det A\cdot\det B

定义​

二阶与三阶​

∣abcd∣=ad−bc\begin{vmatrix} a & b \\ c & d \end{vmatrix}=ad-bc ∣a1b1c1a2b2c2a3b3c3∣=a1b2c3+a2b3c1+a3b1c2−a3b2c1−a2b1c3−a1b3c2\begin{vmatrix} a_1 & b_1 & c_1 \\ a_2 & b_2 & c_2 \\ a_3 & b_3 & c_3 \end{vmatrix}=a_1b_2c_3+a_2b_3c_1+a_3b_1c_2-a_3b_2c_1-a_2b_1c_3-a_1b_3c_2

记忆口诀:对角线法则(沙路法)—— 主对角线方向三项取正,副对角线方向三项取负。

例:算 ∣1234567810∣\begin{vmatrix}1&2&3\\4&5&6\\7&8&10\end{vmatrix}。正项是三条「左上到右下」对角线 1⋅5⋅10+2⋅6⋅7+3⋅4⋅8=50+84+96=2301\cdot5\cdot10+2\cdot6\cdot7+3\cdot4\cdot8=50+84+96=230,负项是三条「右上到左下」对角线 3⋅5⋅7+1⋅6⋅8+2⋅4⋅10=105+48+80=2333\cdot5\cdot7+1\cdot6\cdot8+2\cdot4\cdot10=105+48+80=233,相减得 230−233=−3230-233=-3。

tip

对角线法则 只对二阶、三阶成立,四阶及以上完全不能用。高阶行列式要么按定义(逆序数),要么按行(列)展开,要么化成三角形。

排列与逆序数​

nn 阶行列式的一般定义建立在 排列(Permutation)之上。把 1,2,…,n1,2,\dots,n 的一个排列记作 σ=(σ(1),σ(2),…,σ(n))\sigma=(\sigma(1),\sigma(2),\dots,\sigma(n))。

逆序数(Number of Inversions)τ(σ)\tau(\sigma):排列中前面的数大于后面的数的「逆序对」个数。逆序数为偶则称 偶排列,为奇则称 奇排列。排列的 符号 为:

sgn⁡(σ)=(−1)τ(σ)\operatorname{sgn}(\sigma)=(-1)^{\tau(\sigma)}

例:求排列 (3,1,4,2)(3,1,4,2) 的逆序数。逐个数后面比它小的元素:33 后面有 1,21,2 两个比它小,记 22;11 后面没有更小的,记 00;44 后面有 22 一个,记 11;22 后面没有,记 00。合计 τ=2+0+1+0=3\tau=2+0+1+0=3,是奇排列,符号为 (−1)3=−1(-1)^3=-1。

例:用逆序数定义算 ∣a11a12a13a21a22a23a31a32a33∣\begin{vmatrix}a_{11}&a_{12}&a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33}\end{vmatrix}。从每行各取一个分处不同列的元素,列下标取遍 1,2,31,2,3 的全部 3!=63!=6 个排列,每项带符号 (−1)τ(-1)^\tau:

(1,2,3),τ=0:+a11a22a33(2,3,1),τ=2:+a12a23a31(3,1,2),τ=2:+a13a21a32(3,2,1),τ=3:−a13a22a31(2,1,3),τ=1:−a12a21a33(1,3,2),τ=1:−a11a23a32\begin{aligned} & (1,2,3),\tau=0:+a_{11}a_{22}a_{33} \\ & (2,3,1),\tau=2:+a_{12}a_{23}a_{31} \\ & (3,1,2),\tau=2:+a_{13}a_{21}a_{32} \\ & (3,2,1),\tau=3:-a_{13}a_{22}a_{31} \\ & (2,1,3),\tau=1:-a_{12}a_{21}a_{33} \\ & (1,3,2),\tau=1:-a_{11}a_{23}a_{32} \end{aligned}

六项相加正好是上面的三阶公式,对角线法则不过是它的图形记忆。

nn 阶(按排列定义)​

det⁡A=∑σ∈Snsgn⁡(σ)a1σ(1)a2σ(2)⋯anσ(n)\det A=\sum_{\sigma\in S_n}\operatorname{sgn}(\sigma)a_{1\sigma(1)}a_{2\sigma(2)}\cdots a_{n\sigma(n)}

直观理解:行列式是「从每行各取一个元素、且这些元素分处不同列」的所有取法的乘积之和,每一项再按取法的奇偶性带上 ±\pm 号。共有 n!n! 项,正负项各占一半。

tip

这个定义计算量是 n!n!,纯粹用于理论分析,绝不要拿它去算具体行列式。实战靠展开和初等变换。但它解释了一个常用结论:行列式中只要某一行(或列)全为 00,每一项里都会含这一行的因子,于是行列式为 00。

性质​

把 AA 的行(或列)看作一组向量,行列式满足下面这些性质。由于 det⁡AT=det⁡A\det A^T=\det A,对行成立的对列同样成立。

性质描述
转置不变det⁡AT=det⁡A\det A^T=\det A
交换两行(列)行列式 变号
某行(列)有公因子 kk可把 kk 提到行列式外;故 det⁡(kA)=kndet⁡A\det(kA)=k^n\det A
两行(列)相同或成比例行列式 为 00
某行(列)全为 00行列式 为 00
某行加另一行的 kk 倍行列式 不变
按某行(列)可加性某行写成两行之和时,行列式可拆成两个行列式之和

由乘法性质 det⁡(AB)=det⁡Adet⁡B\det(AB)=\det A\det B 还能推出:

det⁡(A−1)=1det⁡A,det⁡(Am)=(det⁡A)m\det(A^{-1})=\frac{1}{\det A},\det(A^m)=(\det A)^m
tip

「某行加另一行的 kk 倍」(记号 ri+krjr_i+kr_j)是化简最常用的初等变换,它 不改变行列式值,是计算高阶行列式的主力。注意区分:交换两行要变号、某行乘 kk 要乘 kk,只有「加倍数」这一种变换不影响结果。

按行(列)展开​

余子式与代数余子式​

  • 余子式(Minor)MijM_{ij}:划去第 ii 行第 jj 列后,剩下的 (n−1)(n-1) 阶行列式。
  • 代数余子式(Cofactor)Aij=(−1)i+jMijA_{ij}=(-1)^{i+j}M_{ij}。

符号 (−1)i+j(-1)^{i+j} 排成棋盘格:左上角为 ++,相邻格交替变号。

拉普拉斯展开定理​

沿任意一行或一列展开,结果都等于行列式本身:

∣A∣=∑j=1naijAij(按第 i 行),∣A∣=∑i=1naijAij(按第 j 列)|A|=\sum_{j=1}^na_{ij}A_{ij}(\text{按第 }i\text{ 行}),|A|=\sum_{i=1}^na_{ij}A_{ij}(\text{按第 }j\text{ 列})

实战中 挑零最多的那一行(列)展开,能少算很多项。

例:算 ∣3002120541302001∣\begin{vmatrix}3&0&0&2\\1&2&0&5\\4&1&3&0\\2&0&0&1\end{vmatrix}。第 33 列只有一个非零元 a33=3a_{33}=3,按它展开最省事:

∣A∣=a33A33=3⋅(−1)3+3∣302125201∣|A|=a_{33}A_{33}=3\cdot(-1)^{3+3}\begin{vmatrix} 3 & 0 & 2 \\ 1 & 2 & 5 \\ 2 & 0 & 1 \end{vmatrix}

这个三阶行列式的第 22 列又只有 a22=2a_{22}=2 非零,再按第 22 列展开:

∣302125201∣=2⋅(−1)2+2∣3221∣=2(3−4)=−2\begin{vmatrix} 3 & 0 & 2 \\ 1 & 2 & 5 \\ 2 & 0 & 1 \end{vmatrix}=2\cdot(-1)^{2+2}\begin{vmatrix} 3 & 2 \\ 2 & 1 \end{vmatrix}=2(3-4)=-2

于是 ∣A∣=3×(−2)=−6|A|=3\times(-2)=-6。挑零多的行列展开,把一个四阶行列式两步压成了二阶。

重要恒等式​

如果用某一行的元素去乘 另一行 的代数余子式再求和,结果恒为 00:

∑j=1naijAkj={∣A∣,i=k0,i≠k\sum_{j=1}^na_{ij}A_{kj}=\begin{cases} |A|, & i=k \\ 0, & i\ne k \end{cases}

直观解释:i≠ki\ne k 时,这个和相当于把矩阵的第 kk 行换成了第 ii 行(两行相同)的行列式,自然为 00。这条恒等式正是 伴随矩阵 AA∗=∣A∣EAA^*=|A|E 的来源(详见 矩阵)。

计算技巧​

化为三角形​

最通用的方法:用 ri+krjr_i+kr_j 把行列式化成上(下)三角形,再取对角线元素之积。整个过程行列式值不变(只用了「加倍数」变换),若中途交换了行别忘了变号。

例:算 ∣21−11321−13∣\begin{vmatrix}2&1&-1\\1&3&2\\1&-1&3\end{vmatrix}。先用第 11 行把第 22、33 行的首元消成 00(r2−12r1r_2-\frac{1}{2} r_1、r3−12r1r_3-\frac{1}{2} r_1,不变号):

∣21−11321−13∣→r2−12r1,r3−12r1∣21−1052520−3272∣\begin{vmatrix} 2 & 1 & -1 \\ 1 & 3 & 2 \\ 1 & -1 & 3 \end{vmatrix} \xrightarrow{r_2-\frac{1}{2} r_1,r_3-\frac{1}{2} r_1} \begin{vmatrix} 2 & 1 & -1 \\ 0 & \frac{5}{2} & \frac{5}{2} \\ 0 & -\frac{3}{2} & \frac{7}{2} \end{vmatrix}

再用第 22 行消第 33 行(r3+35r2r_3+\frac{3}{5} r_2):

→r3+35r2∣21−105252005∣=2⋅52⋅5=25\xrightarrow{r_3+\frac{3}{5} r_2} \begin{vmatrix} 2 & 1 & -1 \\ 0 & \frac{5}{2} & \frac{5}{2} \\ 0 & 0 & 5 \end{vmatrix}=2\cdot\frac{5}{2}\cdot5=25

对角线相乘即得 2525。若嫌分数烦,也可先把首行首列凑出 11 再消,思路一致。

三角行列式​

∣a11∗⋯∗a22⋯∗⋱⋮0ann∣=a11a22⋯ann\begin{vmatrix} a_{11} & * & \cdots & * \\ & a_{22} & \cdots & * \\ & & \ddots & \vdots \\ 0 & & & a_{nn} \end{vmatrix}=a_{11}a_{22}\cdots a_{nn}

上三角、下三角、对角行列式都等于 对角线元素之积。

加边法(升阶法)​

当各行(列)有公共规律时,给行列式补一行一列、凑出便于消元的结构,再展开化简。常用形式是在左上角添一个 11、首行首列补上辅助元素,不改变原行列式的值。

例:算 nn 阶行列式 Dn=∣a+11⋯11a+1⋯1⋮⋮⋱⋮11⋯a+1∣D_n=\begin{vmatrix}a+1&1&\cdots&1\\1&a+1&\cdots&1\\\vdots&\vdots&\ddots&\vdots\\1&1&\cdots&a+1\end{vmatrix}(对角为 a+1a+1,其余全 11)。在左上角加一行一列:

Dn=∣111⋯10a+11⋯101a+1⋯1⋮⋮⋮⋱⋮011⋯a+1∣D_n=\begin{vmatrix} 1 & 1 & 1 & \cdots & 1 \\ 0 & a+1 & 1 & \cdots & 1 \\ 0 & 1 & a+1 & \cdots & 1 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 1 & 1 & \cdots & a+1 \end{vmatrix}

首列除左上角全为 00,按首列展开值不变。现在每一行(除首行)减去首行,把 a+1a+1 变成 aa、把那些 11 变成 00:

→ri−r1(i≥2)∣111⋯1−1a0⋯0−10a⋯0⋮⋮⋮⋱⋮−100⋯a∣\xrightarrow{r_i-r_1(i\ge2)} \begin{vmatrix} 1 & 1 & 1 & \cdots & 1 \\ -1 & a & 0 & \cdots & 0 \\ -1 & 0 & a & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ -1 & 0 & 0 & \cdots & a \end{vmatrix}

再把第 2∼(n+1)2\sim(n+1) 列各乘 1a\frac{1}{a} 加到第 11 列(消去那些 −1-1),第 11 列左上角变成 1+na1+\frac{n}{a},其余化零,化成下三角:

Dn=(1+na)an=an−1(a+n)D_n=\left(1+\frac{n}{a}\right)a^n=a^{n-1}(a+n)

验证 n=1n=1:原式应为 a+1a+1,公式给 a0(a+1)=a+1a^0(a+1)=a+1,吻合。

范德蒙德行列式​

Vn=∣11⋯1x1x2⋯xnx12x22⋯xn2⋮⋮⋮x1n−1x2n−1⋯xnn−1∣=∏1≤i<j≤n(xj−xi)V_n=\begin{vmatrix} 1 & 1 & \cdots & 1 \\ x_1 & x_2 & \cdots & x_n \\ x_1^2 & x_2^2 & \cdots & x_n^2 \\ \vdots & \vdots & & \vdots \\ x_1^{n-1} & x_2^{n-1} & \cdots & x_n^{n-1} \end{vmatrix}=\prod_{1\le i<j\le n}(x_j-x_i)

只要 x1,x2,…,xnx_1,x_2,\dots,x_n 两两不同,范德蒙德行列式就非零。这一点在多项式插值、特征值理论里反复出现 —— 它保证了「过 nn 个不同横坐标的点恰有唯一的 n−1n-1 次插值多项式」。

例:算 ∣111123149∣\begin{vmatrix}1&1&1\\1&2&3\\1&4&9\end{vmatrix}。这是 x1=1,x2=2,x3=3x_1=1,x_2=2,x_3=3 的三阶范德蒙德行列式,直接套公式 ∏i<j(xj−xi)\prod_{i<j}(x_j-x_i):

(x2−x1)(x3−x1)(x3−x2)=(2−1)(3−1)(3−2)=1⋅2⋅1=2(x_2-x_1)(x_3-x_1)(x_3-x_2)=(2-1)(3-1)(3-2)=1\cdot2\cdot1=2

也可手算核对:第 11 行不动,r3−r2r_3-r_2、r2−r1r_2-r_1 后按第 11 列展开同样得 22。识别出范德蒙德结构,能省去整套消元。

行(列)和相等​

若每一行元素之和都等于同一个常数 cc,可把各列加到第一列,提出公因子 cc,再化简。这类「轮换对称」的行列式常用此法。

例:算 ∣311131113∣\begin{vmatrix}3&1&1\\1&3&1\\1&1&3\end{vmatrix}。每行元素之和都是 55,把第 22、33 列加到第 11 列,第 11 列全变成 55,提出公因子:

→c1+c2+c3∣511531513∣=5∣111131113∣\xrightarrow{c_1+c_2+c_3} \begin{vmatrix} 5 & 1 & 1 \\ 5 & 3 & 1 \\ 5 & 1 & 3 \end{vmatrix} =5\begin{vmatrix} 1 & 1 & 1 \\ 1 & 3 & 1 \\ 1 & 1 & 3 \end{vmatrix}

再 r2−r1r_2-r_1、r3−r1r_3-r_1 把第 11 列下方消零,化成上三角:

=5∣111020002∣=5⋅1⋅2⋅2=20=5\begin{vmatrix} 1 & 1 & 1 \\ 0 & 2 & 0 \\ 0 & 0 & 2 \end{vmatrix}=5\cdot1\cdot2\cdot2=20

三对角与递推行列式​

只有主对角线及其上下两条相邻对角线非零的行列式称 三对角行列式。它没有简单闭式,但按第一行(列)展开会落到 递推关系 上。设:

Dn=∣abcabca⋱⋱⋱bca∣D_n=\begin{vmatrix} a & b & & & \\ c & a & b & & \\ & c & a & \ddots & \\ & & \ddots & \ddots & b \\ & & & c & a \end{vmatrix}

按第一行展开,第二项再按其第一列展开,得到递推式:

Dn=aDn−1−bcDn−2D_n=aD_{n-1}-bcD_{n-2}

例:算主对角全 22、上下相邻对角全 11 的 nn 阶行列式(a=2,b=c=1a=2,b=c=1)。递推为 Dn=2Dn−1−Dn−2D_n=2D_{n-1}-D_{n-2},初值 D1=2D_1=2、D2=∣2112∣=3D_2=\begin{vmatrix}2&1\\1&2\end{vmatrix}=3。逐项算:D3=2⋅3−2=4D_3=2\cdot3-2=4,D4=2⋅4−3=5D_4=2\cdot4-3=5,看出规律 Dn=n+1D_n=n+1。它正是特征方程 x2−2x+1=0x^2-2x+1=0 有重根 x=1x=1 的情形,通解形如 (A+Bn)⋅1n(A+Bn)\cdot1^n,代初值得 Dn=n+1D_n=n+1。

克拉默法则​

设线性方程组 Ax⃗=b⃗A\vec x=\vec b,其中 AA 是 nn 阶方阵且 ∣A∣≠0|A|\ne 0,则方程组有 唯一解:

xj=∣Aj∣∣A∣,j=1,2,…,nx_j=\frac{|A_j|}{|A|},j=1,2,\dots,n

其中 AjA_j 是把 AA 的第 jj 列换成常数列 b⃗\vec b 得到的矩阵。

例:用克拉默法则解 {x1+x2+x3=6x1−x2+2x3=52x1+x2−x3=1\begin{cases}x_1+x_2+x_3=6\\x_1-x_2+2x_3=5\\2x_1+x_2-x_3=1\end{cases}。系数行列式:

∣A∣=∣1111−1221−1∣=1(1−2)−1(−1−4)+1(1+2)=−1+5+3=7≠0|A|=\begin{vmatrix} 1 & 1 & 1 \\ 1 & -1 & 2 \\ 2 & 1 & -1 \end{vmatrix}=1(1-2)-1(-1-4)+1(1+2)=-1+5+3=7\ne0

非零,故有唯一解。把第 11 列换成常数列 (6,5,1)T(6,5,1)^T:

∣A1∣=∣6115−1211−1∣=6(1−2)−1(−5−2)+1(5+1)=−6+7+6=7|A_1|=\begin{vmatrix} 6 & 1 & 1 \\ 5 & -1 & 2 \\ 1 & 1 & -1 \end{vmatrix}=6(1-2)-1(-5-2)+1(5+1)=-6+7+6=7

换第 22 列、第 33 列同理:

∣A2∣=∣16115221−1∣=14,∣A3∣=∣1161−15211∣=21|A_2|=\begin{vmatrix} 1 & 6 & 1 \\ 1 & 5 & 2 \\ 2 & 1 & -1 \end{vmatrix}=14, |A_3|=\begin{vmatrix} 1 & 1 & 6 \\ 1 & -1 & 5 \\ 2 & 1 & 1 \end{vmatrix}=21

于是 x1=∣A1∣∣A∣=1x_1=\frac{|A_1|}{|A|}=1、x2=147=2x_2=\frac{14}{7}=2、x3=217=3x_3=\frac{21}{7}=3。代回原方程:1+2+3=61+2+3=6、1−2+6=51-2+6=5、2+2−3=12+2-3=1,全部吻合。

tip

克拉默法则在 理论上 很漂亮(给出解的闭式表达),但 计算上很笨:解 nn 元方程组要算 n+1n+1 个 nn 阶行列式,远不如高斯消元高效。它的主要价值是理论分析,以及强调「∣A∣≠0|A|\ne 0」这个唯一解的前提。

适用条件​

克拉默法则只在 系数矩阵为方阵且 ∣A∣≠0|A|\ne 0 时适用。一旦 ∣A∣=0|A|=0,法则失效,方程组要么无解、要么有无穷多解,此时只能改用 增广矩阵的秩 来判定(详见 线性方程组与向量组)。

齐次方程组​

对齐次方程组 Ax⃗=0⃗A\vec x=\vec 0(AA 为方阵):

  • ∣A∣≠0|A|\ne 0:只有 零解。
  • ∣A∣=0|A|=0:有 非零解。

几何上,∣A∣=0|A|=0 意味着变换把空间压扁,于是有非零向量被映成 0⃗\vec 0。

行列式与矩阵的关系​

行列式 det⁡A\det A矩阵 AA
≠0\ne 0可逆(非奇异),r(A)=nr(A)=n
=0=0不可逆(奇异),r(A)<nr(A)<n

这张表是连接 行列式、可逆性、秩、方程组解的存在性 的枢纽,后续章节会反复用到。详见 矩阵。