粉粉蕉的笔记本粉粉蕉的笔记本
  • JAVA

    • 代码笔记
    • Java8实战
    • 分布式事务实战(Seata)
    • 模板引擎(FreeMarker)
    • SpringSecurity
  • PYTHON

    • 概述
    • python3
    • python3(菜鸟教程)
    • pandas
    • numpy
    • matplotlib
  • 中间件

    • Kafka
    • RocketMQ
    • Redis
    • MongoDB
    • Elastic Search
  • 数据库

    • Mysql
  • 设计模式
  • 运维

    • linux命令速查
    • windows命令速查
    • Docker笔记
    • kubernetes学习笔记
    • kubernetes实操笔记
    • 运维工具大全
    • git操作宝典
  • 大数据

    • 概览
    • Hadoop
    • Hive
  • 机器学习

    • 机器学习概览
  • 概率论
  • 线性代数
  • 统计学
  • 金融知识学习
  • 聚宽
  • 因子分析
  • RSS
  • 资源导航
  • 医保
  • 健身

    • 笔记
    • 训练计划
  • 装修攻略
  • 读书笔记

    • 《深度学习》
我也想搭建这样的博客!
🚋开往
  • JAVA

    • 代码笔记
    • Java8实战
    • 分布式事务实战(Seata)
    • 模板引擎(FreeMarker)
    • SpringSecurity
  • PYTHON

    • 概述
    • python3
    • python3(菜鸟教程)
    • pandas
    • numpy
    • matplotlib
  • 中间件

    • Kafka
    • RocketMQ
    • Redis
    • MongoDB
    • Elastic Search
  • 数据库

    • Mysql
  • 设计模式
  • 运维

    • linux命令速查
    • windows命令速查
    • Docker笔记
    • kubernetes学习笔记
    • kubernetes实操笔记
    • 运维工具大全
    • git操作宝典
  • 大数据

    • 概览
    • Hadoop
    • Hive
  • 机器学习

    • 机器学习概览
  • 概率论
  • 线性代数
  • 统计学
  • 金融知识学习
  • 聚宽
  • 因子分析
  • RSS
  • 资源导航
  • 医保
  • 健身

    • 笔记
    • 训练计划
  • 装修攻略
  • 读书笔记

    • 《深度学习》
我也想搭建这样的博客!
🚋开往
  • 线性代数

    • 概述
    • 行列式
    • 矩阵
    • 向量
    • 线性方程组

行列式(determinant)

1.二阶行列式

将a,b,c,d四个数,写成这种式子:|abcd|

就称为一个二阶行列式(second-order determinant)。二阶指的是有两行、两列。

一般也会用带有下标的变量表示::|a11a12a21a22|
下标第一个数称为行标;表示这个数在第几行。
下标第二个数称为列标;表示这个数在第几列。
比如,a21表示在第2行第1列。

二阶行列式的按对角线展开

所谓二阶行列式展开,就是将行列式展开成多项式:|abcd|=a×d−b×c

我们可以用“对角线法”去求二阶行列式展开后的多项式(polynomial)。

就是用左上角与右下角相乘,再减去左下角与右上角相乘的值,就可以求得二阶行列式的展开式。

展开之后,得到的多项式便为:a×d−b×c 。

可以理解为:二阶行列式就是这个多项式a×d−b×c的简易写法(虽然看上去没简易多少,但继续往下看三阶行列式,就会发现确实简易了。)

2.三阶行列式

|123456789|有3行3列,被称为一个三阶行列式(Tertiary determinant)。

三阶行列式的按对角线展开

同样可以用“对角线法”,求三阶行列式展开后的多项式。

先将上面的行列式,想象成这样:|123123456456789789|

  1. 先是从左到右:
     
    左上角到右下角: 1×5×9
    然后下一列:2×6×7
    再下一列: 3×4×8
     
    得到3个项,将它们相加:
    1×5×9+2×6×7+3×4×8

  2. 然后从右到左:  
    右上角到左下角: 3×5×7
    然后上一列:2×4×9
    再上一行: 1×6×8
     
    得到3个项,将它们相加:
    3×5×7+2×4×9+1×6×8

  3. 最后,将(1)和(2)相减,就得到三阶行列式的展开式:

|123456789|=1×5×9+2×6×7+3×4×8−(3×5×7+2×4×9+1×6×8)

3.排列

在介绍多阶行列式之前,我们需要先了解一下排列(arrange)的概念。

由1,2...n 这n个数组成的一个有序数组,叫n级排列。1,2...n中,每个数都要出现,才算n级排列。(比如[1345]就不是1,2,3,4,5的一个n级排列)

逆序(reverse order):大数在小数前面,就叫逆序。
比如1,2,3,4有一个n级排列:[4132],4在1前面,就是逆序。

逆序数(Reverse order number):排列中存在多少次逆序,就称为一个排列的逆序数。用N(1,2,...n)表示
还是[4132],4在第1,它比1、3、2都大,所以产生了3次逆序;然后还有3比2大,产生了1次逆序。所以最后算得,[4132]这个排列的逆序数为3+1=4

偶排列(even permutation):逆序数为偶数的排列

奇排列(odd permutation):逆序数为奇数的排列

标准排列:逆序数为0的排列。如N(1,2,...n)

对换:排列中的两个数交换位置,就叫对换

对换后,排列的奇偶性会发生改变。

4.n阶行列式

有n行、n列的行列式,就叫n阶行列式。

n阶行列式的展开

如果再用对角线法,也可以,但是麻烦;因此我们从3阶行列式找找规律:

|a11a12a13a21a22a23a31a32a33|=a11×a22×a33+a12×a23×a31+a13×a21×a32−(a13×a22×a31+a12×a21×a33+a11×a23×a32)

展开后,一共有6个项。
a11×a22×a33
a12×a23×a31
a13×a21×a32
a13×a22×a31
a12×a21×a33
a11×a23×a32

可以看到:
行标的排列都是标准排列(123); 列标的排列取排列的所有可能。

再看列标的排列:
123 偶排列
231 偶排列
312 偶排列
321 奇排列
213 奇排列
132 奇排列
我们发现,正项(符号为+)的列标的排列都是偶排列;负项(符号为-)的列标的排列都是奇排列。

拓展到n阶行列式,我们便可以根据以上规律,求得n阶行列式的按行展开定义:
行标取标准排列;
列标取排列的所有可能。
不同行不同列取出来的元素相乘,符号由列标排列的奇偶性决定;(列标的排列为偶排列的为正项;列标的排列为奇排列的为负项)

相应的,也会有n阶行列式的按列展开定义,两种定义求出来的多项式,均是对的:
列标取标准排列;
行标取排列的所有可能。
不同行不同列取出来的元素相乘,符号由行标排列的奇偶性决定;(行标的排列为偶排列的为正项;行标的排列为奇排列的为负项)

一般用大写字母D来表示行列式的值(determinant的首字母);

我们也可以总结得出:n阶行列式展开后多项式有n!项。

5.行列式的性质

性质1(性质2的推论):两行(列)相等,行列式的值D = 0。

性质2:两行(列)对应成比例,行列式的值D = 0。

性质2的推论:当有一行全为0,行列式的值D = 0。

性质3:某个行列式,有一行为两个值相加,则值可以拆成两个行列式相加的形式。
例子:D=|1234+55+86+2789|=|123456789|+|123582789|

6.行列式的初等变换

转置

行列式转置,值不变。 D=|123456789| -> DT=|147258369|

两行互换

行列式两行互换,值的符号改变。

数乘

某一行都乘以K,等于行列式乘以K。
D=|1234k5k6k789|=k|123456789|

某一行乘以一个数,加到另一行上

值不变。

7.行列式的按行展开

【余子式】

假设有以下行列式:D=|12310456117891213141516|

那么它第3行第2列的元素对应的余子式为:M32=|13104611131516|

即把行列式D的第3行以及第2列上的元素去掉,得到的新的行列式就为新的余子式,用M32表示(3,指第3行;2指第2列)。

【代数余子式】

接上,第3行第2列的元素对应的代数余子式为:A32=(−1)(3+2)|13104611131516|
代数余子式用**Aij表示**。

【行列式的第二种定义】

D=ai1Ai1+ai2Ai2+...+ainAin

其中,ai1 是指在行列式第i行、第1列的元素,Ai1是指第i行、第1列的元素的代数余子式。

简单来说,就是指行列式的值,等于行列式任意一行的所有元素以及其代数余子式的积的总和。

这种换算,也叫行列式的按行展开。

在按行展开时,选择0比较多的行去展开,计算会比较方便。

【异乘变零定理】

某行元素与另一行元素的代数余子式的乘积之和必定为0。

如何证明?

证明:

假设有D=|12310456117891213141516|

第四行元素与第一行的代数余子式异乘:
D′=13×(−1)1+1×|56118912141516|+14×(−1)1+2×|46117912131516|+15×(−1)1+3×|45117812131416|+16×(−1)1+4×|456789131415|

我们再将D第一行的元素变为第四行,得到一个新的行列式B:
B=|13141516456117891213141516|

对B按第一行展开,我们可以发现,展开式与D'相同:
B=13×(−1)1+1×|56118912141516|+14×(−1)1+2×|46117912131516|+15×(−1)1+3×|45117812131416|+16×(−1)1+4×|456789131415|

根据性质3,B = 0 ,因此有D' = B = 0。

【拉普拉斯定理】

2阶子式:往任意相邻2行、任意相邻2列画1直线,直线交叉的元素形成的一个行列式,就是2阶子式;(k阶同理)

2阶余子式:往任意相邻2行、任意相邻2列画1直线,没有直线经过的元素形成的一个行列式,就是2阶余子式;(k阶同理)

2阶代数余子式:第一行号第二行号第一列号第二列号(−1)第一行号+第二行号+第一列号+第二列号 x 2阶余子式

拉普拉斯定理:取定k行,由k行元素组成的所有k阶子式与k阶代数余子式的乘积之和 = D 。

8.行列式的计算

求行列式的值,有以下比较好的计算思路:

(1)简化成上三角行列式

  • 根据性质2、性质4、性质7,将行列式简化成“上三角行列式”(即对角线以下的元素均为0,不包括对角线上的元素)
  • 行列式的值便等于对角线元素的乘积。

【示例1】

D=|6121824456117891213141516|

要将D变为上三角行列式,我们要做的就是将a21,a31,a32,a41,a42,a43这几个值变为0。

  1. 我们可以先将a11变为1,方便计算。方法是将第一行的元素同时乘以16,得:
    D=6×16×|6121824456117891213141516|=6×|16×616×1216×1816×24456117891213141516|=6×|1234456117891213141516|

  2. 开始计算。

a21:将第一行的值乘以-4,加到第二行,根据性质7,D的值不变,同时可以将a21变为0;
D=6×|12344+(−4)5+(−8)6+(−12)11+(−16)7891213141516|=|12340−3−6−57891213141516|

a31:将第一行的值乘以-7,加到第三行:
D=6×|12340−3−6−50−6−13−1613141516|

a32:将第二行的值乘以-2,加到第三行:
D=6×|12340−3−6−500−1−613141516|

a41:将第一行的值乘以-13,加到第四行: D=6×|12340−3−6−500−1−60−12−24−32|

a42:将第二行的值乘以-4,加到第四行: D=6×|12340−3−6−500−1−6000−12|

a43:刚好为0,不用计算。(若不为0,则用第3行的值乘以一个数,加到第四行,时a43为0)
D=6×|12340−3−6−500−1−6000−12|

  1. 将对角线元素相乘,最终得:D=6×1×−3×−1×−12=−216

【示例2】
如下行列式,假设a11为0,就无法用上面这种方法,该怎么办?
D=|0121824456117891213141516|

我们可以根据性质2:两行互换,行列式符号改变,将ai1不为0的行换到第一行,再用上面示例1的方法求值即可。

(2)某一行的0特别多时:

直接对该行某个不为0的元素按行展开,然后计算。

【示例3】

D=|612182445611080013141516|
我们可以看到,以下行列式,第3行有很多0,因此,我们可以对a32按行展开:
D=0×A31+8×A32+0×A33+0×A34=8×A32
然后对A32(a32的代数余子式)求值即可。

(3)加边法

略

(4)范德蒙行列式(Vandermonde determinant)

范德蒙行列式:|1111...1x1x2x3x4...xnx12x22x32x42...xn2...x1n−1x2n−1x3n−1x4n−1...xnn−1|

若行列式满足范德蒙行列式,则它的值 D=∏1<=j<i<=n(xi−xj)

假设有|1111x1x2x3x4x12x22x32x42x13x23x33x43|

则它的值D=(x2−x1)×(x3−x1)×(x4−x1)×(x3−x2)×(x4−x2)×(x4−x3)

(5)对称行列式、反对称行列式

D=|4123135625283681|
上面是一个对称行列式,它有以下特点:

  • 主对角线上的值可以为任意值
  • 上下元素对应相等,即aij = aji

D=|0123−1056−2−50−8−3−680|
上面是一个反对称行列式,它有以下特点:

  • 主对角线上的值都为0
  • 上下元素对应成相反数,即aij = -aji

性质:奇数阶的反对称行列式 ,D = 0

9.克莱姆法则(cramer)

克莱姆法则,是用行列式(或矩阵)的方式,去解n元的方程组。

【定义】
对于一个n元n个方程组,若它的系数行列式不为0,则方程组的解则xi=DiD

【解释】
假设有以下三元方程组:
{x1+x2+x3=1x1−x2+5x3=6−x1+x2+6x3=9

我们将方程组的系数,做成一个系数行列式:
D=|1111−15−116|

此时,可以使用克莱姆法则对x1,x2,x3求解。
x1=D1D
x2=D2D
x3=D3D

其中 D1 的意思是将方程组等号右边的值(1,6,9),替换行列式D第1列后,形成的新的行列式:
D1=|1116−15916|
同理 D2是替换行列式D第2列后,形成的新的行列式:
D2=|111165−196|

但克莱姆法则有使用条件:

  • 必须是n个方程,n个变量
  • D!=0

克莱姆法则计算量比较大,因此一般不使用。

【推论】 对于齐次方程组,若方程个数=未知量个数,D!=0,则齐次方程组只有零解。(x1=x2=...=xn=0)
反过来说也成立:对于齐次方程组,若方程个数=未知量个数,齐次方程组有非零解,则D=0

 
 
 
 
 
 
 
 
 
 

Last Updated: 6/13/25, 9:14 AM
Contributors: dongyz8, azil
Prev
概述
Next
矩阵