大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全家桶1年46,售后保障稳定
近期回顾了下行列式的计算方法,以及其几何意义,本文是作者的一点浅薄理解。欢迎朋友们一起交流。
线性代数系列文章见专栏,下面是往期内容:
(点击蓝色字体进入查看)
正题:
每一个线性变换都对应着一个变换矩阵,被变换后的空间,相对之前来说也发生了一定的形变,而行列式的意义则是线性变换前后,空间形变的倍数。
以二维空间为例,旋转变换就是一种线性变换(不了解旋转变换的请看上条推送),其对应的矩阵叫旋转矩阵:
该变换作用在二维空间的任一个向量,相当于将该向量逆时针旋转θ角度,于是该变换可以把整个二维空间旋转θ角度。
因为只是单纯的旋转,面积不发生变化,所以形变的倍数为1,正如该矩阵的行列式,cos^2+sin^2=1。
其他的一些变换,有的将空间伸展,有的将空间挤压,此时形变倍数就不为1了。假设有线性变换矩阵:
该矩阵将二维空间沿着水平方向伸展3倍,垂直方向不变。还是用上一篇推送的例子,假设有如下图形:
可知面积为5,将线性变换矩阵作用于图中的三个向量,比如[-1 3]T
如下图,绿色向量正是由蓝色向量沿水平方向伸展3倍、垂直方向不变得到的向量。
(因为横坐标是负数,所以向左伸展,若是正数则向右伸展,比如向量[3 1]T)
经过该矩阵的作用,上述三角形变为图下所示:
其面积为15,正好是蓝色三角形面积的3倍,而此变换矩阵的行列式等于3,这就验证了之前的结论,即行列式的意义:线性变换后,空间形变的倍数。
取个极端情况:上述矩阵的行列式等于0 ,那么它的意义就是将该二维平面挤压至一条线甚至一个点,面积自然为零。
笔者为了做图方便,只举了水平方向伸展的例子,向其他方向伸展、挤压的情况朋友们可自行画图摸索、证明。
1.低阶行列式
二阶行列式比较简单,记住它的计算方法即可:主对角乘积 减去 副对角乘积,如下式:
三阶行列式计算公式为:
此公式可用下图来记其规律,实线相连的数相乘,系数为1,虚线相连的数相乘,系数为-1:
(图取自同济教材)
在实际计算中,如果行列式中0元素比较多,可以用按行(列)展开(此方法后面讲),不必记上面的公式。而且,上式也可用展开法得出。
2.全排列和逆序数
在三阶行列式的计算公式中,右侧有六项,每一项都是三个不同行、不同列的元素之积,且每一项的系数有正有负,那么他们之间有什么规律呢?这就涉及到了全排列和逆序数的知识。
全排列:
由高中数学的排列组合可知,n个元素的排列种数为n的阶乘。比如三个数1、2、3,则有六种组合:123、132、231、213、321、312。
逆序数:
对于n个不同的元素,规定一个标准次序(比如从小到大),于是在这n个元素的排列中,当某个元素的先后次序与标准次序不同,就构成1个逆序,一个排列的所有逆序的总数叫做这个排列的逆序数。
逆序数为奇数的排列叫做奇排列,为偶数则叫做偶排列。
上面是课本上的定义,对于大一的同学或者之前没好好学但是想考研的同学,初次看这个定义可能不太好理解,有点懵,那么看下面计算逆序数的方法和几个例子就容易理解了:
假设1~n这n个自然数,规定从小到大为标准次序,对于任意一个元素x(x在1到n之间),如果比x大且排在x前面的元素有t个,那么就说x的逆序数是t,这n个数的逆序数之和为这个排列的逆序数。
例1:求32514这个排列的逆序数。(同济例题)
解:
对于3,排在第一位,它的前面没有比它大的数,所以其逆序数为0;
对于2,2的前面比它大的数只有一个3,所以其逆序数为1;
对于5,它排在第三位,前面的3和2都比它小,所以其逆序数为0;
对于1,它排在第四位,前面的3、2、5都比它大,所以其逆序数为3;
对于4,它排在最后一位,前面比它大的数只有5,所以其逆序数为1;
于是,这个排列的逆序数为0+1+0+3+1=5。
上面的解法是看该元素前面有几个比它大的数,还有另一种解法,看该元素后面有几个比它小的数,还是上个题,可以这样算:
对于3,其后面有两个数比它小,分别是1、2,所以其逆序数为2;
对于2,其后面只有一个数比它小,所以其逆序数为1;
对于5,其后面有两个数1、4比它小,所以其逆序数为2;
对于1和4,其逆序数均为0;
于是,这个排列的逆序数等于2+1+2+0+0等于5。
(注意,上述都是基于标准次序为从小到大顺序来计算的)
了解了逆序数的计算方法后,我们来看行列式的计算公式与逆序数有什么关系,此处以三阶为例,为了方便,下面再贴出三阶行列式的公式:
可以看出,右侧的每一项,除了系数外,都可写为
其中第一个下标(行标)是标准次序123,p1、p2、p3 是1、2、3的某个排列,前文提到,这三个数的排列有六种,所以得出上式右侧的六个乘积项,而系数的计算方法为:
p1、p2、p3为偶排列时,系数为1;
p1、p2、p3为奇排列时,系数为-1;
可以验证,系数为1的三个项,列标分别为123、231、312,其逆序数分别为0、2、2,是偶数;系数为-1的三个项,读者自行验证。
所以,各项的系数可以表示为(-1)t ,其中t是该项各元素列标排列的逆序数。
本文以三阶为例,高阶的依此类推。
(关于逆序数和行列式的关系,某一年考研中考过,具体哪年忘记了…)
本文首发于微信公众号:数字自修
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/213540.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...