行列式计算方法

13 minIntermediate2026/6/14

行列式常用计算方法:化上三角法、范德蒙德行列式、拉普拉斯展开、递推法、数学归纳法、加边法、特征值法等。

1. 化上三角法

1.1 方法原理

利用行列式的性质六(行倍加不变),将行列式化为上三角行列式,然后取主对角线元素之积。

a11a12a1na21a22a2nan1an2ann行变换b11b12b1n0b22b2n00bnn=b11b22bnn\begin{vmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{vmatrix} \xrightarrow{\text{行变换}} \begin{vmatrix} b_{11} & b_{12} & \cdots & b_{1n} \\ 0 & b_{22} & \cdots & b_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & b_{nn} \end{vmatrix} = b_{11}b_{22} \cdots b_{nn}

1.2 计算步骤

  1. a11=0a_{11} = 0,交换行(列)使 a110a_{11} \neq 0(注意变号)
  2. 用第一行消去下方元素:riai1a11r1r_i - \frac{a_{i1}}{a_{11}} r_1
  3. 对右下角的 (n1)(n-1) 阶子式重复上述过程
  4. 最终化为上三角,取对角线之积

示例:计算 1232573712\begin{vmatrix} 1 & 2 & 3 \\ 2 & 5 & 7 \\ 3 & 7 & 12 \end{vmatrix}

r22r1,r33r1123011013r3r2123011002=1×1×2=2\xrightarrow{r_2 - 2r_1, r_3 - 3r_1} \begin{vmatrix} 1 & 2 & 3 \\ 0 & 1 & 1 \\ 0 & 1 & 3 \end{vmatrix} \xrightarrow{r_3 - r_2} \begin{vmatrix} 1 & 2 & 3 \\ 0 & 1 & 1 \\ 0 & 0 & 2 \end{vmatrix} = 1 \times 1 \times 2 = 2

2. 范德蒙德行列式

2.1 定义

nn范德蒙德行列式(Vandermonde determinant)为:

Vn=111x1x2xnx12x22xn2x1n1x2n1xnn1=1j<in(xixj)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 & \ddots & \vdots \\ x_1^{n-1} & x_2^{n-1} & \cdots & x_n^{n-1} \end{vmatrix} = \prod_{1 \leq j < i \leq n}(x_i - x_j)

2.2 展开形式

Vn=(x2x1)(x3x1)(xnx1)(x3x2)(x4x2)(xnx2)(xnxn1)V_n = (x_2 - x_1)(x_3 - x_1) \cdots (x_n - x_1)(x_3 - x_2)(x_4 - x_2) \cdots (x_n - x_2) \cdots (x_n - x_{n-1})

共有 n(n1)2\dfrac{n(n-1)}{2} 个因子。

2.3 证明思路

从最后一行开始,每行减去上一行的 x1x_1 倍:

Vn=1110x2x1xnx10x2(x2x1)xn(xnx1)0x2n2(x2x1)xnn2(xnx1)V_n = \begin{vmatrix} 1 & 1 & \cdots & 1 \\ 0 & x_2 - x_1 & \cdots & x_n - x_1 \\ 0 & x_2(x_2-x_1) & \cdots & x_n(x_n-x_1) \\ \vdots & \vdots & \ddots & \vdots \\ 0 & x_2^{n-2}(x_2-x_1) & \cdots & x_n^{n-2}(x_n-x_1) \end{vmatrix}

按第一列展开,再提取各列公因子:

Vn=i=2n(xix1)Vn1(x2,,xn)V_n = \prod_{i=2}^{n}(x_i - x_1) \cdot V_{n-1}(x_2, \ldots, x_n)

递推即得。

2.4 应用

示例:计算 1111123414916182764\begin{vmatrix} 1 & 1 & 1 & 1 \\ 1 & 2 & 3 & 4 \\ 1 & 4 & 9 & 16 \\ 1 & 8 & 27 & 64 \end{vmatrix}

这是 x1=1,x2=2,x3=3,x4=4x_1 = 1, x_2 = 2, x_3 = 3, x_4 = 4 的范德蒙德行列式:

V4=(21)(31)(41)(32)(42)(43)=1×2×3×1×2×1=12V_4 = (2-1)(3-1)(4-1)(3-2)(4-2)(4-3) = 1 \times 2 \times 3 \times 1 \times 2 \times 1 = 12

3. 拉普拉斯展开

3.1 定义

拉普拉斯展开是按行(列)展开定理的推广,允许同时按多行(列)展开。

定理:在 nn 阶行列式 A|A| 中,任意取定 kk 行(列)(1k<n1 \leq k < n),由这 kk 行(列)元素所组成的一切 kk 阶子式与它们的代数余子式的乘积之和等于 A|A|

A=1j1<j2<<jknMj1j2jkAj1j2jk|A| = \sum_{1 \leq j_1 < j_2 < \cdots < j_k \leq n} M_{j_1 j_2 \cdots j_k} \cdot A_{j_1 j_2 \cdots j_k}

其中 Mj1j2jkM_{j_1 j_2 \cdots j_k} 是由取定的 kk 行和第 j1,j2,,jkj_1, j_2, \ldots, j_k 列交叉元素组成的 kk 阶子式,Aj1j2jkA_{j_1 j_2 \cdots j_k} 是其代数余子式。

3.2 应用场景

当行列式中某些行(列)含有较多零元素,或具有分块结构时,拉普拉斯展开特别有效。

示例:计算 1200340000560078\begin{vmatrix} 1 & 2 & 0 & 0 \\ 3 & 4 & 0 & 0 \\ 0 & 0 & 5 & 6 \\ 0 & 0 & 7 & 8 \end{vmatrix}

按前两行进行拉普拉斯展开,非零子式只有 M12,12M_{12,12}

=12345678=(46)(4042)=(2)(2)=4= \begin{vmatrix} 1 & 2 \\ 3 & 4 \end{vmatrix} \cdot \begin{vmatrix} 5 & 6 \\ 7 & 8 \end{vmatrix} = (4-6)(40-42) = (-2)(-2) = 4

一般地,分块对角行列式:

AOOB=AB\begin{vmatrix} A & O \\ O & B \end{vmatrix} = |A| \cdot |B|

4. 递推法

4.1 方法原理

对具有规律性结构的行列式,通过展开建立递推关系,然后求解递推关系。

4.2 典型示例

箭形行列式

Dn=a1b2b3bnc2a200c30a30cn00anD_n = \begin{vmatrix} a_1 & b_2 & b_3 & \cdots & b_n \\ c_2 & a_2 & 0 & \cdots & 0 \\ c_3 & 0 & a_3 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ c_n & 0 & 0 & \cdots & a_n \end{vmatrix}

解法:各列提取 aia_i 后(i2i \geq 2),将各列的适当倍数加到第一列,消去 cic_i

Dn=i=2nai(a1i=2nbiciai)D_n = \prod_{i=2}^{n} a_i \cdot \left(a_1 - \sum_{i=2}^{n} \frac{b_i c_i}{a_i}\right)

5. 加边法(升阶法)

5.1 方法原理

在原行列式基础上添加一行一列,使新行列式更容易计算,且新行列式等于原行列式。

Dn=100Dn0D_n = \begin{vmatrix} 1 & * & * & \cdots & * \\ 0 & & & & \\ 0 & & D_n & & \\ \vdots & & & & \\ 0 & & & & \end{vmatrix}

5.2 典型示例

计算 Dn=1+a11111+a21111+anD_n = \begin{vmatrix} 1+a_1 & 1 & \cdots & 1 \\ 1 & 1+a_2 & \cdots & 1 \\ \vdots & \vdots & \ddots & \vdots \\ 1 & 1 & \cdots & 1+a_n \end{vmatrix}ai0a_i \neq 0

解法:加边

Dn=111101+a111011+a210111+anD_n = \begin{vmatrix} 1 & 1 & 1 & \cdots & 1 \\ 0 & 1+a_1 & 1 & \cdots & 1 \\ 0 & 1 & 1+a_2 & \cdots & 1 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 1 & 1 & \cdots & 1+a_n \end{vmatrix}

第一行乘 (1)(-1) 加到各行:

=11111a10010a20100an= \begin{vmatrix} 1 & 1 & 1 & \cdots & 1 \\ -1 & a_1 & 0 & \cdots & 0 \\ -1 & 0 & a_2 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ -1 & 0 & 0 & \cdots & a_n \end{vmatrix}

各列除以 aia_i 后,将各列加到第一列:

=i=1nai1+i=1n1ai1a11an010001= \prod_{i=1}^{n} a_i \cdot \begin{vmatrix} 1 + \sum_{i=1}^{n}\frac{1}{a_i} & \frac{1}{a_1} & \cdots & \frac{1}{a_n} \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \end{vmatrix}

=i=1nai(1+i=1n1ai)= \prod_{i=1}^{n} a_i \cdot \left(1 + \sum_{i=1}^{n}\frac{1}{a_i}\right)

6. 数学归纳法

6.1 方法步骤

  1. 通过低阶情形猜测行列式的值
  2. 用数学归纳法证明

示例:证明 Dn=a1000a1000a0000an×n=anD_n = \begin{vmatrix} a & -1 & 0 & \cdots & 0 \\ 0 & a & -1 & \cdots & 0 \\ 0 & 0 & a & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 & \cdots & a \end{vmatrix}_{n \times n} = a^n

这是上三角行列式,显然 Dn=anD_n = a^n

7. 特征值法

7.1 方法原理

AA 的特征值为 λ1,λ2,,λn\lambda_1, \lambda_2, \ldots, \lambda_n,则 A=λ1λ2λn|A| = \lambda_1 \lambda_2 \cdots \lambda_n

7.2 应用

对于某些特殊矩阵,求特征值比直接计算行列式更方便。

示例:计算 A|A|,其中 A=(211121112)A = \begin{pmatrix} 2 & 1 & 1 \\ 1 & 2 & 1 \\ 1 & 1 & 2 \end{pmatrix}

AA 的特征多项式:λIA=(λ1)2(λ4)|\lambda I - A| = (\lambda-1)^2(\lambda-4)

特征值为 λ1=λ2=1\lambda_1 = \lambda_2 = 1λ3=4\lambda_3 = 4,故 A=1×1×4=4|A| = 1 \times 1 \times 4 = 4

8. 计算方法选择指南

行列式特征推荐方法
数字行列式化上三角法
含参数行列式化上三角法或展开法
有较多零元素按零多的行(列)展开
分块结构拉普拉斯展开
规律性结构递推法或归纳法
xij1x_i^{j-1} 形式范德蒙德行列式
行(列)和相等各行(列)加到同一行(列)
抽象矩阵特征值法或性质推导