行列式(determinant)是由一个 n 阶方阵 A(n 行 n 列)按固定规则算出的一个数,记作 det(A) 或 |A|。它衡量方阵所代表的线性变换对面积/体积的缩放倍数,绝对值越大放缩越强,符号表示定向是否翻转;为 0 则表示变换把空间压扁、矩阵不可逆。
二阶行列式|a b; c d| = ad − bc,即主对角线乘积减副对角线乘积。例如 |1 2; 3 4| = 1·4 − 2·3 = −2。几何意义是以 (a,c)、(b,d) 两向量为邻边的平行四边形的有向面积。
三阶行列式(Sarrus 法则)对 [a b c; d e f; g h i],det = aei + bfg + cdh − ceg − bdi − afh:三条主对角线(左上→右下)乘积之和,减去三条副对角线(右上→左下)乘积之和。注意 Sarrus 只适用于三阶,四阶及以上必须用展开或消元。
n 阶:拉普拉斯(余子式)展开沿第一行展开:det(A) = Σⱼ a₁ⱼ · (−1)^(1+j) · M₁ⱼ,其中 M₁ⱼ 是划去第 1 行、第 j 列后剩下的 (n−1) 阶子式行列式,(−1)^(1+j)·M₁ⱼ 称为代数余子式 C₁ⱼ。这样把 n 阶逐层降为低阶。本工具结果区会把这几项逐一列出。
Bareiss 分数-free 消元(本工具算法)展开法项数随阶数阶乘增长,效率低。本工具改用Bareiss 分数-free 消元:把矩阵消成上三角,行列式等于对角线之积,且每一步除法对整数矩阵都保证整除、全程保持整数,因此结果为精确整数,不出现浮点误差。计算复杂度约 O(n³),8 阶以内瞬时完成。
常用性质det(Aᵀ)=det(A);交换两行变号;某行乘 k 则行列式乘 k,故 det(kA)=kⁿ·det(A);有一行为 0 或两行成比例则 det=0; 把某行倍数加到另一行不改变行列式;det(AB)=det(A)·det(B);三角矩阵行列式为对角线之积;可逆时 det(A⁻¹)=1/det(A)。
算例设 A = [6 1 1; 4 −2 5; 2 8 7],按 Sarrus:6·(−2)·7 + 1·5·2 + 1·4·8 − 1·(−2)·2 − 1·4·7 − 6·5·8 = −84 + 10 + 32 + 4 − 28 − 240 = −306。因 −306 ≠ 0,故 A 可逆。
精度:全程高精度十进制运算(decimal.js,约 40 位有效数字),整数矩阵行列式为精确整数,小数元素除不尽时保留到所选小数位并标 ≈。