行列式 determinant 的递归定义

当 $n \ge 2$,$n \times n$ 矩阵 $A = [a_{ij}]$ 的行列式为

$$\det A = a_{11}\det A_{11} - a_{12}\det A_{12} + \cdots + (-1)^{1 + n} a_{1n} \det A_{1n}$$

其中 $A_{ij}$ 为 $A$ 中删去第 $i$ 行和第 $j$ 列后剩下的 $(n-1) \times (n-1)$ 的矩阵。

若定义 $A$ 的 $(i,j)$ 余子式 $C(i,j)$

$$C_{i,j} = (-1)^{i + j} \det A_{ij}$$

那么行列式可以重写为 $\det A = \sum\limits_{j = 1}^n a_{1j}C_{1j}$。该公式也称为 $A$ 的第一行的余因子展开式 cofactor expansion across the first row of A

定理 1: $n \times n$ 的矩阵的行列式等于以任意行或任意列展开的余因子展开式。形式化地说

$$\det A = \sum_{j=1}^n (-1)^{i + j} C_{ij},\ \forall i \in [1,n]$$

$$\det A = \sum_{i=1}^n (-1)^{i + j} C_{ij},\ \forall j \in [1,n]$$

计算行列式的技巧

若矩阵中某行或某列的 $0$ 项非常多,那么以该行或该列展开的余子式计算时,将会有乘积为 $0$ 的项出现。这就简便了我们的计算。

定理 2: 上(下)三角矩阵的行列式等于矩阵主对角线 main diagonal 上元素的乘积。

对于 $n \times n$ 的矩阵,使用 定理 1 来计算行列式的时间复杂度是 $O(n!)$。