3.4 无关、基和维度

这一节是关于子空间的真实大小。对于 m × n m\times n m×n 的矩阵,它有 n n n 个列,但是它真正的维数不一定为 n n n,维数可以由无关列的个数来得到。列空间的实际维度就是秩 r r r
无关的概念是用于向量空间中的任意向量 v 1 , . . . , v n \boldsymbol v_1,...,\boldsymbol v_n v1,...,vn。这一节主要关注的是常用的子空间 —— 尤其是矩阵 A A A 的列空间和零空间。“向量” 其实不一定是列向量,也可以是矩阵或函数;它们可以线性无关(或线性相关)。
对于的理解:无关向量张成空间
空间中的每一个向量都是基向量的唯一组合 \pmb{空间中的每一个向量都是基向量的唯一组合} 空间中的每一个向量都是基向量的唯一组合本节有四个重点:

1、无关向量 \kern 24pt (没有额外向量)
2、张成一个空间 \kern 10pt (足够的能生成余下的向量的向量)
3、空间的基 \kern 24pt (不多也不少)
4、空间的维度 \kern 18pt (基的向量个数)

一、线性无关

定义 \kern 10pt A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的解唯一解是 x = 0 \boldsymbol x=\boldsymbol 0 x=0 时, A A A 的列是线性无关的。没有其它的组合使得 A x A\boldsymbol x Ax 是零向量。

当零空间 N ( A ) \pmb N(A) N(A) 只有一个零向量时, A A A 的列线性无关。下面一 R 3 \pmb {\textrm R}^3 R3 为例解释线性无关(和相关):

  1. 如果三个向量不在同一个平面内,则它们是无关的。除了 0 v 1 + 0 v 2 + 0 v 3 0\boldsymbol v_1+0\boldsymbol v_2+0\boldsymbol v_3 0v1+0v2+0v3 之外,不存在其它 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3 的组合可以得到零向量。如 Figure 3.4 所示:
  2. 如果三个向量 w 1 , w 2 , w 3 \boldsymbol w_1,\boldsymbol w_2,\boldsymbol w_3 w1,w2,w3 在同一平面,则它们相关。

在这里插入图片描述
将无关的概念用在 12 12 12 维空间中的 7 7 7 个向量,如果它们都是 A A A 的列且是无关的,那么零空间就只有 x = 0 \boldsymbol x=\boldsymbol 0 x=0,没有任何一个向量是其它六个向量的组合。
换个表述方式,就是线性无关的第 2 2 2 定义,该定义会用在任意向量空间中的任意向量序列。当向量是 A A A 的列时,这两种定义完全相同。

定义 \kern 10pt 如果 0 v 1 + 0 v 2 + ⋯ + 0 v n 0\boldsymbol v_1+0\boldsymbol v_2+\cdots+0\boldsymbol v_n 0v1+0v2++0vn 是得到零向量的唯一组合,则向量序列 v 1 , v 2 , ⋯   , v n \boldsymbol v_1,\boldsymbol v_2,\cdots,\boldsymbol v_n v1,v2,,vn 线性无关
线性无关 x 1 v 1 + x 2 v 1 + ⋯ + x n v n = 0 仅当所有   x ′ s   都为   0   时成立 ( 3.4.1 ) \pmb{线性无关}\\x_1\boldsymbol v_1+x_2\boldsymbol v_1+\cdots +x_n\boldsymbol v_n=\boldsymbol 0\kern 10pt仅当所有\,x's\,都为\,0\,时成立\kern 10pt(3.4.1) 线性无关x1v1+x2v1++xnvn=0仅当所有xs都为0时成立(3.4.1)

若存在一个 x ′ s x's xs 不全为 0 0 0 的组合可以得到 0 \boldsymbol 0 0,这个向量序列是相关的。
正确的表述方式:向量序列是线性无关的。可以简述为:向量是无关的。错误的表述方式:矩阵是无关的。
一个向量序列要么相关,要么无关,它们的组合可以得到零向量( x ′ s x's xs 不全为零)或不能得到。所以关键问题是:什么样的组合可以得到零向量?下面是 R 2 \pmb{\textrm R}^2 R2 中的一些例子:
(a)向量 ( 1 , 0 ) (1,0) (1,0) ( 0 , 1 ) (0,1) (0,1) 是无关的。
(b)向量 ( 1 , 0 ) (1,0) (1,0) ( 1 , 0.00001 ) (1,0.00001) (1,0.00001) 是无关的。
(c)向量 ( 1 , 1 ) (1,1) (1,1) ( − 1 , − 1 ) (-1,-1) (1,1) 是相关的。
(d)向量 ( 1 , 1 ) (1,1) (1,1) ( 0 , 0 ) (0,0) (0,0) 是相关的,这是因为零向量。
(e)在 R 2 \textrm{\pmb R}^2 R2 中,任意三个向量 ( a , b ) , ( c , d ) , ( e , f ) (a,b),(c,d),(e,f) (a,b)(c,d)(e,f) 都是相关的。
从几何上看, ( 1 , 1 ) (1,1) (1,1) ( − 1 , − 1 ) (-1,-1) (1,1) 都在同一条通过原点的直线上,它们是相关的。使用定义来看,找到 x 1 x_1 x1 x 2 x_2 x2 的一个组合,使得 x 1 ( 1 , 1 ) + x 2 ( − 1 , − 1 ) = ( 0 , 0 ) x_1(1,1)+x_2(-1,-1)=(0,0) x1(1,1)+x2(1,1)=(0,0),同求解 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 是一样的: [ 1 − 1 1 − 1 ] [ x 1 x 2 ] = [ 0 0 ] 解得   x 1 = 1 , x 2 = 1 \begin{bmatrix}1&-1\\1&-1\end{bmatrix}\begin{bmatrix}x_1\\x_2\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix}\kern 10pt解得\,x_1=1,x_2=1 [1111][x1x2]=[00]解得x1=1x2=1 A A A 的列是相关的,因为它的零空间中存在非零向量。
如果 v ′ s \boldsymbol v's vs 中的一个向量是零向量,则该向量组一定是线性相关的。
R 2 \textrm {\pmb R}^2 R2 中的三个向量不可能线性无关!一种解释是:矩阵 A A A 的三个列则必定存在一个自由变量,那么 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 就有一个特殊解。另一种解释是:如果前两个向量是无关的,那么它们的某种组合肯定能得到第三个向量。
下面是 R 3 \pmb {\textrm R}^3 R3 空间中的三个向量,如果其中一个是另一个的倍数,则它们相关。但是完整的测试应该三个向量一起,我们将这三个向量放在一个矩阵中,然后求解 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0

例1 A A A 的列是相关的, A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 有一个非零解: A x = [ 1 0 3 2 1 5 1 0 3 ] [ − 3 1 1 ] 是 − 3 [ 1 2 1 ] + 1 [ 0 1 0 ] + 1 [ 3 5 3 ] = [ 0 0 0 ] A\boldsymbol x=\begin{bmatrix}1&0&3\\2&1&5\\1&0&3\end{bmatrix}\begin{bmatrix}-3\\\kern 7pt1\\\kern 7pt1\end{bmatrix}是\kern 3pt-3\begin{bmatrix}1\\2\\1\end{bmatrix}+1\begin{bmatrix}0\\1\\0\end{bmatrix}+1\begin{bmatrix}3\\5\\3\end{bmatrix}=\begin{bmatrix}0\\0\\0\end{bmatrix} Ax= 121010353 311 3 121 +1 010 +1 353 = 000 这个矩阵的秩只有 r = 2 r=2 r=2。无关列会得到列满秩 r = n = 3 r=n=3 r=n=3
这个矩阵中行同样也是相关的,行 1 1 1 减去行 3 3 3 会得到零行。对于方阵,可以证明相关列则有相关行,反之亦然。
问题: 如何求解 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0?系统的方法是消元法。 A = [ 1 0 3 2 1 5 1 0 3 ] 简化得 R = [ 1 0 3 0 1 − 1 0 0 0 ] A=\begin{bmatrix}1&0&3\\2&1&5\\1&0&3\end{bmatrix}简化得\kern 3ptR=\begin{bmatrix}1&0&\kern 7pt3\\0&1&-1\\0&0&\kern 7pt0\end{bmatrix} A= 121010353 简化得R= 100010310 x = ( − 3 , 1 , 0 ) \boldsymbol x=(-3,1,0) x=(3,1,0) 正好就是特殊解。这个说明自由列(列 3 3 3)是主元列的组合,这种情况下不可能无关。

列满秩 \kern 10pt A A A 的秩 r = n r=n r=n 时,它的列是无关的。此时有 n n n 个主元没有自由变量。零空间中仅有 x = 0 \boldsymbol x=\boldsymbol 0 x=0

有一种情形很重要。假设 A A A 7 7 7 列,每列有 5 5 5 个分量( m = 5 m=5 m=5 小于 n = 7 n=7 n=7),则它的列肯定是相关的。 R 5 \pmb{\textrm R}^5 R5 中任意的 7 7 7 个向量都是相关的, A A A 的秩不可能大于 5 5 5 5 5 5 个行不可能超过 5 5 5 个主元。 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 至少有 7 − 5 = 2 7-5=2 75=2 个自由变量,因此它有非零解 —— 这有意味着 A A A 的列是相关的。

如果 n > m n>m n>m,则 R m \pmb{\textrm R}^m Rm 中的任意 n n n 个向量都是相关的。

这种类型的矩阵列比行多,它既矮又宽。如果 n > m n>m n>m,则这些列必然相关,因为 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 有非零解。
如果 n ≤ m n\leq m nm,则这些列可能相关也可能无关,消元可以得到 r r r 个主元列,这 r r r 个主元列是无关列。
注: 另一种描述无关的方法是:一个向量是其它向量的组合。这种描述方法非常简洁,但是我们并没有使用这种定义。我们定义比较长:除了每个系数 x x x 都是零的平凡组合外,存在某个组合可能得到零向量。这种定义方式排除了简单得到零向量的可能,如果一个向量是其它向量的组合,这个向量的系数是 x = 1 x=1 x=1,这种情况下该向量特殊化了。
这个问题的重点是,我们的定义没有选择一个特定的向量, A A A 的每一列都是同等对待的。当我们检验 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 时,他可能有非零解也可能没有,而这样比去检验最后一列(或第一列,或中间的某一列)是不是其它列的组合要好一些。

二、向量张成子空间

对于列空间,从列 v 1 , ⋯   , v n \boldsymbol v_1,\cdots,\boldsymbol v_n v1,,vn 开始,子空间被所有的组合 x 1 v 1 + ⋯ + x n v n x_1\boldsymbol v_1+\cdots+x_n\boldsymbol v_n x1v1++xnvn 所填满,即列空间包含 A x A\boldsymbol x Ax 的所有组合。关于张成(span)的描述:列空间是由列向量张成的。

定义 \kern 10pt 若一个向量组的线性组合填满一个空间,则该向量组张成这个空间。

矩阵的列张成列空间,它们可能是相关的。 \pmb{矩阵的列张成列空间,它们可能是相关的。} 矩阵的列张成列空间,它们可能是相关的。例2 v 1 = [ 1 0 ] \boldsymbol v_1=\begin{bmatrix}1\\0\end{bmatrix} v1=[10] v 2 = [ 0 1 ] \boldsymbol v_2=\begin{bmatrix}0\\1\end{bmatrix} v2=[01] 张成整个二维空间 R 2 \pmb{\textrm R}^2 R2

例3 v 1 = [ 1 0 ] , v 2 = [ 0 1 ] , v 3 = [ 4 7 ] \boldsymbol v_1=\begin{bmatrix}1\\0\end{bmatrix},\boldsymbol v_2=\begin{bmatrix}0\\1\end{bmatrix},\boldsymbol v_3=\begin{bmatrix}4\\7\end{bmatrix} v1=[10]v2=[01]v3=[47] 也张成整个二维空间 R 2 \pmb{\textrm R}^2 R2

例4 w 1 = [ 1 1 ] \boldsymbol w_1=\begin{bmatrix}1\\1\end{bmatrix} w1=[11] w 2 = [ − 1 − 1 ] \boldsymbol w_2=\begin{bmatrix}-1\\-1\end{bmatrix} w2=[11] 只张成 R 2 \pmb{\textrm R^2} R2 中的一条直线, w 1 \boldsymbol w_1 w1 这一个向量也可以。
考虑两个三维空间中从 ( 0 , 0 , 0 ) (0,0,0) (0,0,0) 出发的向量,一般来说它们可以张成一个平面,它们的线性组合可以得到这个平面。在数学上,还有其它的可能性:两个向量可以张成一条直线,三个向量可以张成整个 R 3 \textrm {\pmb R}^3 R3,或者一个平面,甚至它们可以只张成一条直线; 10 10 10 个向量也可能只张成一个平面,此时它们不是无关的。
列张成列空间,由行张成的空间称为行空间,即行所有的组合得到行空间

定义 \kern 10pt 矩阵的行空间是 R n \pmb {\textrm R}^n Rn 的子空间,行张成行空间。
A   的行空间是   C ( A T ) ,就是   A T   的列空间。 A\,的行空间是\,\pmb C(A^T),就是\,A^T\,的列空间。 A的行空间是C(AT),就是AT的列空间。

m × n m\times n m×n 的矩阵的行有 n n n 个分量,它们是 R n \pmb{\textrm R}^n Rn 中的向量 —— 或者把它们直接写成列向量,我们可以通过转置矩阵来实现,不再关注 A A A 的行,而是关注 A T A^T AT 的列。同样的数字,但是现在它是 C ( A T ) \pmb C(A^T) C(AT) 的列空间。 A A A 的行空间是 R n \pmb{\textrm R}^n Rn 的子空间。

例5】描述 A A A 的列空间与行空间: A = [ 1 4 2 7 3 5 ] 与   A T = [ 1 2 3 4 7 5 ] ,此处   m = 3 , n = 2 A=\begin{bmatrix}1&4\\2&7\\3&5\end{bmatrix}与\,A^T=\begin{bmatrix}1&2&3\\4&7&5\end{bmatrix},此处\,m=3,n=2 A= 123475 AT=[142735],此处m=3n=2 A A A 的列空间是由它两个列张成的 R 3 \pmb{\textrm R^3} R3 中的平面,行空间是由它的三行( A T A^T AT 的三列)所张成的整个 R 2 \textrm {\pmb R}^2 R2 空间。记住:行在 R n \textrm {\pmb R}^n Rn 中张成行空间,列在 R m \textrm {\pmb R}^m Rm 中张成列空间。同样的数字,不同的向量,不同的空间。

三、向量空间的基

两个向量不能张成整个 R 2 \textrm{\pmb R}^2 R2,就算它们无关也不行;四个向量不可能无关,虽然它们可以张成整个 R 3 \pmb{\textrm R}^3 R3。我们需要足够多的可以张成空间的向量(不能多),它就是 “”(basis)。

定义 \kern 10pt 向量空间的基是一组向量,它具有两个性质: 基向量线性无关,它们能张成空间。 \pmb{基向量线性无关,它们能张成空间。} 基向量线性无关,它们能张成空间。

这两个性质是线性代数的基础,空间中的每一个向量 v \boldsymbol v v 都是基向量的组合,因为基向量张成这个空间。除此之外,得到向量 v \boldsymbol v v 的组合是唯一的,因为基向量 v 1 , ⋯   , v n \boldsymbol v_1,\cdots,\boldsymbol v_n v1,,vn 是无关的: 有且只有一种将向量   v   写成基向量的组合方式。 \pmb{有且只有一种将向量\,\boldsymbol v\,写成基向量的组合方式。} 有且只有一种将向量v写成基向量的组合方式。原因: 假设 v = a 1 v 1 + ⋯ + a n v n \boldsymbol v=a_1\boldsymbol v_1+\cdots+a_n\boldsymbol v_n v=a1v1++anvn v = b 1 v 1 + ⋯ + b n v n \boldsymbol v=b_1\boldsymbol v_1+\cdots+b_n\boldsymbol v_n v=b1v1++bnvn,两式相减得 ( a 1 − b 1 ) v 1 + ⋯ + ( a n − b n ) v n = 0 (a_1-b_1)\boldsymbol v_1+\cdots+(a_n-b_n)\boldsymbol v_n=\boldsymbol 0 (a1b1)v1++(anbn)vn=0,因为基向量 v ′ s \boldsymbol v's vs 是无关的,所以每个 a i − b i = 0 a_i-b_i=0 aibi=0,因此 a i = b i a_i=b_i ai=bi,即只有一种得到 v \boldsymbol v v 的组合方式。

例6 I = [ 1 0 0 1 ] I=\begin{bmatrix}1&0\\0&1\end{bmatrix} I=[1001] 的列是 R 2 \pmb {\textrm R}^2 R2 的标准基。 基向量   i = [ 1 0 ] , j = [ 0 1 ] 是无关的,它们张成   R 2 基向量\,\boldsymbol i=\begin{bmatrix}1\\0\end{bmatrix},\boldsymbol j=\begin{bmatrix}0\\1\end{bmatrix}是无关的,它们张成\,\pmb{\textrm R}^2 基向量i=[10]j=[01]是无关的,它们张成R2这一组是最好想到的基,向量 i \boldsymbol i i 是横向移动,向量 j \boldsymbol j j 是纵向移动。 3 × 3 3\times3 3×3 的单位矩阵的列是标准基 i , j , k \boldsymbol i,\boldsymbol j,\boldsymbol k ijk n × n n\times n n×n 的单位矩阵的列就是 R n \textrm {\pmb R}^n Rn标准基(Standard basis)。
但是基是不唯一的,一个向量空间有无数的基。

例7】(重要)每一个 n × n n\times n n×n 的可逆矩阵的所有列都是 R n \textrm{\pmb R}^n Rn 的一组基: 可逆矩阵 无关列 列空间是 R 3 A = [ 1 0 0 1 1 0 1 1 1 ] 奇异矩阵 相关列 列空间 ≠ R 3 B = [ 1 0 1 1 1 2 1 1 2 ] \begin{matrix}\pmb{可逆矩阵}\\无关列\\列空间是\pmb {\textrm R}^3\end{matrix}\kern 15ptA=\begin{bmatrix}1&0&0\\1&1&0\\1&1&1\end{bmatrix}\kern 15pt\begin{matrix}\pmb{奇异矩阵}\\相关列\\列空间\neq\pmb {\textrm R}^3\end{matrix}\kern 15ptB=\begin{bmatrix}1&0&1\\1&1&2\\1&1&2\end{bmatrix} 可逆矩阵无关列列空间是R3A= 111011001 奇异矩阵相关列列空间=R3B= 111011122 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的唯一解是 x = A − 1 0 = 0 \boldsymbol x=A^{-1}\boldsymbol 0=\boldsymbol 0 x=A10=0,它的列是无关的,张成整个 R n \textrm{\pmb R}^n Rn 空间 —— 因为每个向量 b \boldsymbol b b 都是列的组合。 A x = b A\boldsymbol x=\boldsymbol b Ax=b 总有解 x = A − 1 b \boldsymbol x=A^{-1}\boldsymbol b x=A1b,总结如下:

当向量 v 1 , ⋯   , v n \boldsymbol v_1,\cdots,\boldsymbol v_n v1,,vn 恰好是 n × n n\times n n×n 可逆矩阵的列时,这些向量是 R n \pmb {\textrm R}^n Rn一组基。因此 R n \pmb{\textrm R}^n Rn 有无穷多组基。

当这些列线性相关,我们只取主元列 —— 上述 B B B 有主元的前两列,它们无关且张成列空间。

A A A主元列是列空间的一组基 A A A 的主元行是行空间的一组基,行简化阶梯形式 R R R 的主元行也是 A A A 的一组基。

例8】一个不可逆矩阵,它的列不是任何空间的基。 一个主元列 一个主元行 ( r = 1 ) A = [ 2 4 3 6 ] 简化为 R = [ 1 2 0 0 ] \begin{matrix}\pmb{一个主元列}\\\pmb{一个主元行}(r=1)\end{matrix}\kern 15ptA=\begin{bmatrix}2&4\\3&6\end{bmatrix}简化为\kern 5ptR=\begin{bmatrix}1&2\\0&0\end{bmatrix} 一个主元列一个主元行(r=1)A=[2346]简化为R=[1020] A A A 的列 1 1 1 是主元列,单独这个列是列空间的基, A A A 的第二列是列空间另一个不同的基,因此第一列的所有非零倍数都是列空间的基。一般我们选择主元列作为基。
注意到 R R R 的主元列 ( 1 , 0 ) (1,0) (1,0) 的尾部是 0 0 0,这个列是 R R R 列空间的基,但是它不再属于 A A A 的列空间, A A A R R R 的列空间不相同,它们的基也不同。(它们的维度相同。)
A A A 的行空间与 R R R 的行空间相同,它包含 ( 2 , 4 ) , ( 1 , 2 ) (2,4),(1,2) (2,4)(1,2) 以及所有的这些向量任意倍数,对于基我们永远有无数种选择,一般情况下我们选择 R R R 的非零行(有主元的行),所以 A A A 这个秩一矩阵的基只有一个向量: 列空间的基: [ 2 3 ] 行空间的基: [ 1 2 ] 列空间的基:\begin{bmatrix}2\\3\end{bmatrix}\kern 10pt行空间的基:\begin{bmatrix}1\\2\end{bmatrix} 列空间的基:[23]行空间的基:[12]例9】找到下面秩二矩阵的列空间与行空间的基: R = [ 1 2 0 3 0 0 1 4 0 0 0 0 ] R=\begin{bmatrix}1&2&0&3\\0&0&1&4\\0&0&0&0\end{bmatrix} R= 100200010340 1 1 1 和列 3 3 3 是主元列,它们都是 R R R 列空间的一组基, R R R 的列空间中的向量都具有 b = ( x , y , 0 ) \boldsymbol b=(x,y,0) b=(x,y,0) 的形式, R R R 的列空间都是整个三维空间 x y z xyz xyz 中的 x y xy xy 平面,这个平面不是 R 2 \pmb{\textrm R}^2 R2,它是 R 3 \pmb{\textrm R}^3 R3 的一个子空间。列 2 2 2 和列 3 3 3 同样也是列空间的一组基,我们一般选择主元列。
R R R 的行空间是 R 4 \pmb{\textrm R}^4 R4 的子空间,它最简单的基就是 R R R 的两个非零行。第三行(零行)也在行空间中,但是它不能作为行空间的基,因为基必须线性无关。

问题 \kern 10pt 给定 R 7 \textrm {\pmb R}^7 R7 中的 5 5 5 个向量,如何找到这 5 5 5 个向量所张成的空间的一组基?

解一:将这些向量当成矩阵 A A A 的行,利用消元法找到 R R R 的非零行。
解二:将这 5 5 5 个向量放入 A A A 的列,通过消元找到 A A A 的主元列(不是 R R R 的),这些主元列就是列空间的一组基。
其它的基可以会有多或少一些的向量吗?答案是没有,向量空间的所有基都有相同的向量个数
任何一组基向量的个数,就是空间的维度。 \pmb{任何一组基向量的个数,就是空间的维度。} 任何一组基向量的个数,就是空间的维度。

四、向量空间的维度

我们可以证明上述结论:我们可以选择不同的基向量,但是每组基向量的个数是相同的。

如果 v 1 , v 2 , ⋯   , v n \boldsymbol v_1,\boldsymbol v_2,\cdots,\boldsymbol v_n v1,v2,,vn w 1 , w 2 , ⋯   , w n \boldsymbol w_1,\boldsymbol w_2,\cdots,\boldsymbol w_n w1,w2,,wn 是同一个向量空间的基,那么 m = n m=n m=n

证明: 假设 w ′ s \boldsymbol w's ws 的个数比 v ′ s \boldsymbol v's vs 的个数多,即 n > m n>m n>m,我们需要导出矛盾。因为 v ′ s \boldsymbol v's vs 是一组基,所以 w 1 \boldsymbol w_1 w1 一定是 v ′ s \boldsymbol v's vs 的组合,如果 w 1 = a 11 v 1 + a 21 v 2 + ⋯ + a m 1 v m \boldsymbol w_1=a_{11}\boldsymbol v_1+a_{21}\boldsymbol v_2+\cdots+a_{m1}\boldsymbol v_m w1=a11v1+a21v2++am1vm,这个就是两个矩阵相乘 V A VA VA 的第一列: 每个   w   都是 v ′ s 的组合 W = [ w 1 w 2 ⋯ w n ] = [ v 1 v 2 ⋯ v m ] [ a 11 ⋯ a 1 n ⋮ ⋮ a m 1 ⋯ a m n ] = V A \begin{matrix}\pmb{每个\,\boldsymbol w\,都是}\\\pmb{\boldsymbol v's的组合}\end{matrix}\kern 10ptW=\begin{bmatrix}\boldsymbol w_1&\boldsymbol w_2&\cdots&\boldsymbol w_n\end{bmatrix}=\begin{bmatrix}\boldsymbol v_1&\boldsymbol v_2&\cdots&\boldsymbol v_m\end{bmatrix}\begin{bmatrix}a_{11}&\cdots&a_{1n}\\\vdots&&\vdots\\a_{m1}&\cdots&a_{mn}\end{bmatrix}=VA 每个w都是vs的组合W=[w1w2wn]=[v1v2vm] a11am1a1namn =VA我们不清楚每个 a i j a_{ij} aij 是多少,但是我们知道 A A A 的形状( m × n m\times n m×n)。第二个向量 w 2 \boldsymbol w_2 w2 同样也是 v ′ s \boldsymbol v's vs 的组合,组合的系数就是 A A A 的第二列,关键是 A A A 的元素对于每个 v \boldsymbol v v 都有一行( a 11 v 1 , a 12 v 1 , ⋯   , a 1 n v 1 a_{11}\boldsymbol v_1,a_{12}\boldsymbol v_1,\cdots,a_{1n}\boldsymbol v_1 a11v1,a12v1,,a1nv1),对应于每个 w \boldsymbol w w 有一列(每个 w \boldsymbol w w 的系数对应于 A A A 的列)。由于 n > m n>m n>m,所以 A A A 是一个又矮又宽的矩阵, r < n r<n r<n,所以 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 有非零解
A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 则有 V A x = 0 VA\boldsymbol x=\boldsymbol 0 VAx=0,即 W x = 0 W\boldsymbol x=\boldsymbol 0 Wx=0,即有 w ′ s \boldsymbol w's ws 的组合为零,所以 w ′ s \boldsymbol w's ws 相关。因此 w ′ s \boldsymbol w's ws 不可能是基,假设 n > m n>m n>m 的情况下的两种基是不存在的。
如果 m > n m>n m>n,我们可以交换 v ′ s \boldsymbol v's vs w ′ s \boldsymbol w's ws,其余步骤同上。唯一无法导出矛盾的情况就是 m = n m=n m=n,即完成证明。
每组基向量的个数与空间有关,而不是特定的基。对于没一组基,这个数字不会变,它代表这空间的自由度。 R n \pmb{\textrm R}^n Rn 空间的维度是 n n n,下面介绍这个重要概念 “”,它也适用于其它的空间。

定义 \kern 10pt 空间的维度就是每组基的向量个数

这个符合我们的直觉,通过 v = ( 1 , 5 , 2 ) \boldsymbol v=(1,5,2) v=(1,5,2) 的直线维度为 1 1 1,它是一个子空间,这个子空间的基就是一个向量 v \boldsymbol v v。 垂直于该直线的平面是 x + 5 y + 2 z = 0 x+5y+2z=0 x+5y+2z=0,这个平面的维度为 2 2 2。我们可以找到这个空间的一组基 ( − 5 , 1 , 0 ) (-5,1,0) (5,1,0) ( − 2 , 0 , 1 ) (-2,0,1) (2,0,1),这组基只包含两个向量,所以维度是 2 2 2
这个平面是矩阵 A = [ 1 5 2 ] A=\begin{bmatrix}1&5&2\end{bmatrix} A=[152] 的零空间, A A A 有两个自由变量,基的两个向量 ( − 5 , 1 , 0 ) (-5,1,0) (5,1,0) ( − 2 , 0 , 1 ) (-2,0,1) (2,0,1) 就是 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的两个特殊解。 n − r n-r nr 个特殊解是零空间的一组基。 C ( A ) \pmb C(A) C(A) 的维度是 r r r N ( A ) \pmb N(A) N(A) 的维度是 n − r n-r nr
线性代数语言注释: 我们不会说 “空间的秩” 或者 “基的维度” 或 “矩阵的基”,这些术语没有意义。正确的表述为 “列空间的维度” 等于 “矩阵的秩”。

五、矩阵空间和函数空间的基

无关、基、维度这些概念并不局限于列向量,也可以用在矩阵空间和函数空间。我们可以问三个 3 × 4 3\times 4 3×4 的矩阵 A 1 , A 2 , A 3 A_1,A_2,A_3 A1,A2,A3 是否无关,它们是在所有 3 × 4 3\times4 3×4 的矩阵所形成的空间中,某些组合可能得到零矩阵。我们也可以问 3 × 4 3\times4 3×4 的矩阵空间的维度是多少?(是 12 12 12。)
微分方程 d 2 y d x 2 = y \displaystyle\frac{\textrm d^2y}{\textrm dx^2}=y dx2d2y=y 有一个解空间,其中的一组基是 y = e x y=e^x y=ex y = e − x y=e^{-x} y=ex,通过基函数的个数可知这个所有解形成的解空间的维度是 2 2 2(因为是二阶导数,所以维度为 2 2 2)。
矩阵空间和函数空间相对于前的向量空间可能会有些奇怪,但是如果完全理解了基和维度的概念后,就可以将它们应用到除列向量之外的 “向量”(例如矩阵、函数等) 中。
矩阵空间 \kern 10pt 向量空间 M \pmb{\textrm M} M 包含所有的 2 × 2 2\times2 2×2 的矩阵,它的维度是 4 4 4 一组基是 A 1 , A 2 , A 3 , A 4 = [ 1 0 0 0 ] , [ 0 1 0 0 ] , [ 0 0 1 0 ] , [ 0 0 0 1 ] \pmb{一组基是}\kern 10ptA_1,A_2,A_3,A_4=\begin{bmatrix}1&0\\0&0\end{bmatrix},\begin{bmatrix}0&1\\0&0\end{bmatrix},\begin{bmatrix}0&0\\1&0\end{bmatrix},\begin{bmatrix}0&0\\0&1\end{bmatrix} 一组基是A1,A2,A3,A4=[1000],[0010],[0100],[0001]这些矩阵线性无关,我们不将它们看成列向量,而是整个矩阵。这 4 4 4 个矩阵组合可以生成 M \textrm{\pmb M} M 中的任意矩阵,因此它们张成了矩阵空间: 每个   A   都是 基矩阵的组合 c 1 A 1 + c 2 A 2 + c 3 A 3 + c 4 A 4 = [ c 1 c 2 c 3 c 4 ] = A \begin{matrix}每个\,A\,都是\\基矩阵的组合\end{matrix}\kern 10ptc_1A_1+c_2A_2+c_3A_3+c_4A_4=\begin{bmatrix}c_1&c_2\\c_3&c_4\end{bmatrix}=A 每个A都是基矩阵的组合c1A1+c2A2+c3A3+c4A4=[c1c3c2c4]=A当且仅当所有的 c ′ s c's cs 都为零时, A A A 才是零矩阵 —— 这就证明了 A 1 , A 2 , A 3 , A 4 A_1,A_2,A_3,A_4 A1,A2,A3,A4 是无关的。
A 1 , A 2 , A 4 A_1,A_2,A_4 A1,A2,A4 这三个矩阵是上三角矩阵这个子空间的一组基,它的维度是 3 3 3 A 1 , A 4 A_1,A_4 A1,A4 是对角矩阵的一组基;那么对称矩阵的基是什么? A 1 , A 4 , A 2 + A 3 A_1,A_4,A_2+A_3 A1,A4,A2+A3 是它的一组基。
更深入一些,考虑 n × n n\times n n×n 矩阵所形成的空间,其中一组基就是每个矩阵都只有一个元素是非零数(这个元素是 1 1 1),则有 n 2 n^2 n2 种可能性,因此共有 n 2 n^2 n2 个基矩阵: n × n   矩阵所形成的空间,维度是   n 2 上三角矩阵所形成的子空间,维度是   1 2 n 2 + 1 2 n 对角矩阵所形成的子空间,维度是   n 对称矩阵所形成的子空间,维度是   1 2 n 2 + 1 2 \begin{array}{l}\pmb{n\times n\,矩阵所形成的空间,维度是\,n^2}\\\pmb{上三角矩阵所形成的子空间,维度是\,\frac{1}{2}n^2+\frac{1}{2}n}\\\pmb{对角矩阵所形成的子空间,维度是\,n}\\\pmb{对称矩阵所形成的子空间,维度是\,\frac{1}{2}n^2+\frac{1}{2}}\end{array} n×n矩阵所形成的空间,维度是n2上三角矩阵所形成的子空间,维度是21n2+21n对角矩阵所形成的子空间,维度是n对称矩阵所形成的子空间,维度是21n2+21函数空间 \kern10pt 方程 d 2 y d x 2 = 0 , d 2 y d x 2 = − y , d 2 y d x 2 = y \displaystyle\frac{\textrm d^2y}{\textrm dx^2}=0,\frac{\textrm d^2y}{\textrm dx^2}=-y,\frac{\textrm d^2y}{\textrm dx^2}=y dx2d2y=0,dx2d2y=y,dx2d2y=y 都与二阶导数有关,使用微积分我们可以解出函数 y ( x ) y(x) y(x) y ′ ′ = 0 通解是   y = c x + d y ′ ′ = − y 通解是   y = c sin ⁡   x + d cos ⁡   x y ′ ′ = y 通解是   y = c e x + d e − x \begin{array}{ll}y''=0&通解是\,y=cx+d\\y''=-y&通解是\,y=c\sin\,x+d\cos\,x\\y''=y&通解是\,y=ce^x+de^{-x}\end{array} y′′=0y′′=yy′′=y通解是y=cx+d通解是y=csinx+dcosx通解是y=cex+dex y ′ ′ = − y y''=-y y′′=y 的解空间有两个基函数 sin ⁡   x \sin\,x sinx cos ⁡   x \cos\,x cosx y ′ ′ = 0 y''=0 y′′=0 的解空间的两个基函数是 x x x 1 1 1,这是二阶导数的零空间。这两个函数空间的维度都是 2 2 2(因为是二阶方程)。
y ′ ′ = 2 y''=2 y′′=2 所有的解无法形成一个子空间,因为右侧得到 b = 2 b=2 b=2 不是 0 0 0,它的一个特解是 y = x 2 y=x^2 y=x2,完全解是 y ( x ) = x 2 + c x + d y(x)=x^2+cx+d y(x)=x2+cx+d,这些函数都满足 y ′ ′ = 2 y''=2 y′′=2。注意,特解加上零空间中任意的函数 c x + d cx+d cx+d 就是完全解。线性微分方程和线性矩阵方程 A x = b A\boldsymbol x=\boldsymbol b Ax=b 很像,但是我们是用微积分的方法求解,而不是线性代数。
只包含零空间的空间 Z \textrm {\pmb Z} Z,它的维度是 0 0 0,它是一个空集合(不包含任何向量)是 Z \pmb{\textrm Z} Z 的基。基中不允许存在零向量,因为那样的话基就不可能线性无关。

六、主要内容总结

  1. 如果 x = 0 \boldsymbol x=\boldsymbol 0 x=0 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的唯一解,则 A A A 的列线性无关
  2. 如果向量 v 1 , v 2 , ⋯   , v r \boldsymbol v_1,\boldsymbol v_2,\cdots,\boldsymbol v_r v1,v2,,vr 的组合填满一个空间,则它们张成空间。
  3. 基是线性无关且张成空间的向量。这个空间的每个向量都是基向量的唯一组合。
  4. 空间中所有的基都有相同的向量个数,基中向量的个数就是空间的维度
  5. 主元列是列空间的一组基,维度是 r r r

七、例题

例10】已知两个向量 v 1 = ( 1 , 2 , 0 ) , v 2 = ( 2 , 3 , 0 ) \boldsymbol v_1=(1,2,0),\boldsymbol v_2=(2,3,0) v1=(1,2,0)v2=(2,3,0),回答下列问题:
(a)它们是否线性无关?
(b)它们是某一个空间的基吗?
(c)它们张成什么空间 V \pmb {\textrm V} V
(d)空间 V \pmb{\textrm V} V 的维度是多少?
(e)哪个矩阵 A A A 的列空间是 V \textrm {\pmb V} V
(f)哪个矩阵 A A A 的零空间是 V \textrm {\pmb V} V
(g)描述所有的向量 v 3 \boldsymbol v_3 v3,使得 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3 R 3 \textrm {\pmb R}^3 R3 的一组基。
解: (a) v 1 \boldsymbol v_1 v1 v 2 \boldsymbol v_2 v2 是线性无关的,因为得到 0 \boldsymbol 0 0 的唯一组合是 0 v 1 + 0 v 2 0\boldsymbol v_1+0\boldsymbol v_2 0v1+0v2
(b)是的,它们是它们所张成空间的一组基。
(c)空间 V \pmb {\textrm V} V 包含所有的向量 ( x , y , 0 ) (x,y,0) (x,y,0),就是 R 3 \pmb{\textrm R}^3 R3 空间的 x y xy xy 平面。
(d)空间 V \textrm {\pmb V} V 的维度是 2 2 2,因为它的基有两个向量。
(e)如果 A A A 每一列都是 v 1 \boldsymbol v_1 v1 v 2 \boldsymbol v_2 v2 的线性组合,则空间 V \pmb{\textrm V} V 的任意的 3 × n 3\times n 3×n 的矩阵 A A A 的列空间, A A A 的秩为 2 2 2。特殊情况 A A A 只有两列 v 1 \boldsymbol v_1 v1 v 2 \boldsymbol v_2 v2
(f)每行都是 ( 0 , 0 , 1 ) (0,0,1) (0,0,1) 的倍数的 m × 3 m\times 3 m×3 的矩阵 B B B,它是秩一矩阵,零空间是 V \pmb{\textrm V} V。特殊的 B = [ 0 0 1 ] B=\begin{bmatrix}0&0&1\end{bmatrix} B=[001],有 B v 1 = 0 , B v 2 = 0 B\boldsymbol v_1=0,B\boldsymbol v_2=0 Bv1=0Bv2=0
(g)任意的第三向量 v 3 = ( a , b , c ) \boldsymbol v_3=(a,b,c) v3=(a,b,c),其中 c ≠ 0 c\neq0 c=0,均可构成 R 3 \textrm {\pmb R}^3 R3 的一组基。

例11 w 1 , w 2 , w 3 \boldsymbol w_1,\boldsymbol w_2,\boldsymbol w_3 w1,w2,w3 这三个向量线性无关,它们的线性组合得到 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3。将组合写成矩阵形式 V = W B V=WB V=WB v 1 = w 1 + w 2 v 2 = w 1 + 2 w 2 + w 3 v 3 = w 2 + c w 3 就是 [ v 1 v 2 v 3 ] = [ w 1 w 2 w 3 ] [ 1 1 0 1 2 1 0 1 c ] \begin{array}{l}\boldsymbol v_1=\boldsymbol w_1+\boldsymbol w_2\\\boldsymbol v_2=\boldsymbol w_1+2\boldsymbol w_2+\boldsymbol w_3\\\boldsymbol v_3=\kern 31pt\boldsymbol w_2+c\boldsymbol w_3\end{array}就是\kern 3pt\begin{bmatrix}\boldsymbol v_1&\boldsymbol v_2&\boldsymbol v_3\end{bmatrix}=\begin{bmatrix}\boldsymbol w_1&\boldsymbol w_2&\boldsymbol w_3\end{bmatrix}\begin{bmatrix}1&1&0\\1&2&1\\0&1&c\end{bmatrix} v1=w1+w2v2=w1+2w2+w3v3=w2+cw3就是[v1v2v3]=[w1w2w3] 11012101c 怎样可以验证 V = W B V=WB V=WB 是否有无关列?如果 c ≠ 1 c\neq1 c=1,证明 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3 线性无关。如果 c = 1 c=1 c=1,证明 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3 线性相关。
解: 我们使用第一个定义验证 V V V 是否有无关列: V V V 的零空间只包含零向量, x = 0 \boldsymbol x=\boldsymbol 0 x=0 V x = 0 V\boldsymbol x=\boldsymbol 0 Vx=0 成立的唯一组合。
如果 c = 1 c=1 c=1,可以通过两种方式判断列的相关性:首先, v 1 + v 3 = v 2 \boldsymbol v_1+\boldsymbol v_3=\boldsymbol v_2 v1+v3=v2 w 1 + w 2 \boldsymbol w_1+\boldsymbol w_2 w1+w2 w 2 + w 3 \boldsymbol w_2+\boldsymbol w_3 w2+w3 相加得 w 1 + 2 w 2 + w 3 \boldsymbol w_1+2\boldsymbol w_2+\boldsymbol w_3 w1+2w2+w3 即是 v 2 \boldsymbol v_2 v2)。换言之, v 1 − v 2 + v 3 = 0 \boldsymbol v_1-\boldsymbol v_2+\boldsymbol v_3=\boldsymbol 0 v1v2+v3=0,即证明所有的 v ′ s \boldsymbol v's vs 不是无关的;
另一方法是检验 B B B 的零空间,如果 c = 1 c=1 c=1,向量 x = ( 1 , − 1 , 1 ) \boldsymbol x=(1,-1,1) x=(1,1,1) 在零空间中,有 B x = 0 B\boldsymbol x=\boldsymbol 0 Bx=0,则有 W B x = 0 WB\boldsymbol x=\boldsymbol 0 WBx=0,即是 V x = 0 V\boldsymbol x=\boldsymbol 0 Vx=0,因此所有的 v ′ s \boldsymbol v's vs 是相关的。零空间中的向量 x = ( 1 , − 1 , 1 ) \boldsymbol x=(1,-1,1) x=(1,1,1) 同样可以得到 v 1 − v 2 + v 3 = 0 \boldsymbol v_1-\boldsymbol v_2+\boldsymbol v_3=\boldsymbol 0 v1v2+v3=0
假设 c ≠ 1 c\neq1 c=1,则矩阵 B B B 是可逆的。所以若 x \boldsymbol x x 是任意的非零向量,则有 B x B\boldsymbol x Bx 也不为零,因为 w ′ s \boldsymbol w's ws 是无关的,所以可得 W B x WB\boldsymbol x WBx 也不为零。因为 V = W B V=WB V=WB,即有 V x V\boldsymbol x Vx 不为零,也就说明 x \boldsymbol x x 不在 V V V 的零空间中,即证明了 v 1 , v 2 , v 3 \boldsymbol v_1,\boldsymbol v_2,\boldsymbol v_3 v1,v2,v3 线性无关。
一般规则:如果 B B B 可逆,则来自无关的 w ′ s \boldsymbol w's ws v ′ s \boldsymbol v's vs 也是无关的。如果这些向量在 R 3 \pmb{\textrm R}^3 R3 中,则它们不仅是无关的,也是 R 3 \textrm {\pmb R}^3 R3 的一组基。当转换矩阵 B B B 是可逆的,则它将基 w ′ s \boldsymbol w's ws 转换成的 v ′ s \boldsymbol v's vs 也是基。

例12】(重要例题)假设 v 1 , v 2 , ⋯   , v n \boldsymbol v_1,\boldsymbol v_2,\cdots,\boldsymbol v_n v1,v2,,vn R n \textrm {\pmb R}^n Rn 的一组基, A A A n × n n\times n n×n 的可逆矩阵。证明 A v 1 , A v 2 , ⋯   , A v n A\boldsymbol v_1,A\boldsymbol v_2,\cdots,A\boldsymbol v_n Av1,Av2,,Avn 也是 R n \textrm {\pmb R}^n Rn 的一组基。
解: 矩阵语言:将基向量 v 1 , v 2 , ⋯   , v n \boldsymbol v_1,\boldsymbol v_2,\cdots,\boldsymbol v_n v1,v2,,vn 放在一个可逆矩阵 V V V 的列中,则 A v 1 , A v 2 , ⋯   , A v n A\boldsymbol v_1,A\boldsymbol v_2,\cdots,A\boldsymbol v_n Av1,Av2,,Avn 就是 A V AV AV 的列,因为 A A A 可逆,则 A V AV AV 也可逆,它的列就是一组基。
向量语言:假设 c 1 A v 1 + c 2 A v 2 + ⋯ + c n A v n = 0 c_1A\boldsymbol v_1+c_2A\boldsymbol v_2+\cdots+c_nA\boldsymbol v_n=\boldsymbol 0 c1Av1+c2Av2++cnAvn=0,也可以写成 A v = 0 A\boldsymbol v=\boldsymbol 0 Av=0,其中 v = c 1 v 1 + c 2 v 2 + ⋯ + c n v n \boldsymbol v=c_1\boldsymbol v_1+c_2\boldsymbol v_2+\cdots+c_n\boldsymbol v_n v=c1v1+c2v2++cnvn。左边同时乘上 A − 1 A^{-1} A1,可得 v = 0 \boldsymbol v=\boldsymbol 0 v=0,因为 v ′ s \boldsymbol v's vs 是线性无关的,所以所有的 c i = 0 c_i=0 ci=0,即证明了 A v ′ s A\boldsymbol v's Avs 的无关性。
为了证明 A v ′ s A\boldsymbol v's Avs 可以张成 R n \textrm {\pmb R}^n Rn,只需证明 c 1 A v 1 + c 2 A v 2 + ⋯ + c n A v n = b c_1A\boldsymbol v_1+c_2A\boldsymbol v_2+\cdots+c_nA\boldsymbol v_n=\boldsymbol b c1Av1+c2Av2++cnAvn=b 的可解性,两边左乘 A − 1 A^{-1} A1 得, c 1 v 1 + c 2 v 2 + ⋯ + c n v n = A − 1 b c_1\boldsymbol v_1+c_2\boldsymbol v_2+\cdots+c_n\boldsymbol v_n=A^{-1}\boldsymbol b c1v1+c2v2++cnvn=A1b,因为 v ′ s \boldsymbol v's vs 是一组基,所以该方程一定有解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/590579.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

匿名函数和箭头函数的使用场景

箭头函数和匿名函数其实是相同的使用场景 匿名函数通常在以下情况下使用&#xff1a; 作为回调函数&#xff1a; 当你需要将函数作为参数传递给另一个函数时&#xff0c;可以使用匿名函数。 array.map(item > item * 2);事件处理程序&#xff1a; 在事件处理程序中&#xf…

如何配置Jupyter Lab以允许远程访问和设置密码保护

如何配置Jupyter Lab以允许远程访问和设置密码保护 当陪你的人要下车时&#xff0c;即使不舍&#xff0c;也该心存感激&#xff0c;然后挥手道别。——宫崎骏《千与千寻》 在数据科学和机器学习工作流中&#xff0c;Jupyter Lab是一个不可或缺的工具&#xff0c;但是默认情况下…

【C++】深入剖析C++11中右值引用和左值引用

目录 一、左值引用 && 右值引用 二、左值引用于右值引用的比较 三、 右值引用使用场景和意义 1、函数返回值 ①移动赋值 ②移动构造 2、STL容器插入接口 ​3、完美转发 一、左值引用 && 右值引用 传统的C语法中就有引用的语法&#xff0c;而C11中新增了…

[基础] Unity Shader:顶点着色器(vert)函数

顶点着色器&#xff08;Vertex Shader&#xff09;是图形渲染的第一个阶段&#xff0c;它的输入来自于CPU。顶点着色器的处理单位是顶点&#xff0c;CPU输入进来的每个顶点都会调用一次顶点着色器函数&#xff0c;也就是我们在Shader代码里所定义的vert函数。本篇我们将会通过顶…

全球知名哲学家思想家颜廷利:唯物须防危屋,唯心不及为醒…

‘唯物’须防‘危屋’ ‘唯心’不及‘为醒’…&#xff08;升命学说&#xff09; 21世纪东方哲学家思想家、科学家、当代中国教育界知名教授、专业周易起名改名字、易经姓名学专家、目前比较有影响力的人物、现代国学大师泰斗杰出代表颜廷利教授在《升命学说》‘净化论’里面如…

Python中如何调用其他文件的类或函数

Python中如何调用其他文件的类或函数 在Python编程中&#xff0c;随着项目的扩大&#xff0c;代码通常会被分解为多个模块&#xff0c;以提高可读性和可维护性。模块通常是包含Python定义和声明的文件。了解如何从一个文件调用另一个文件中的类或函数是非常重要的&#xff0c;…

Linux学习之路 -- 文件 -- 文件操作

在学习C语言时&#xff0c;我们就学习过文件相关的内容&#xff0c;但是由于知识储备尚且不足&#xff0c;无法深入的了解文件&#xff0c;下面我们就要重新认识一下文件。 <1> 简单介绍(铺垫) 1.前面我们说过&#xff0c;文件 内容 属性&#xff0c;所以我们对文件的…

Spring Boot中使用Redis和Lua脚本实现延时队列

码到三十五 &#xff1a; 个人主页 延时队列是一种常见的需求。延时队列允许我们延迟处理某些任务&#xff0c;这在处理需要等待一段时间后才能执行的操作时特别有用&#xff0c;如发送提醒、定时任务等。文中&#xff0c;将介绍如何在Spring Boot环境下使用Redis和Lua脚本来实…

Java Web网页设计(5)-查看网页

青春就像一只容器 装满了不安 躁动 青涩 与偶尔的疯狂 5.下面开始做网页的查看 如何实现点击查看订单 即可显示已经添加的数据信息 调用doGet 1&#xff09;首先 修改一下名字 修改为工程名 2&#xff09;调用Dao返回一个集合 存到一个公共对象里面 3&#xff09;把集合显示到…

第一次用ssh登录树莓派or linux服务器出现Permission denied (publickey)

authenticity of host ) cant be established ssh userip Permission denied (publickey) 解决办法&#xff1a; 第一步&#xff1a; PasswordAuthentication yes 第二步&#xff1a; service sshd restart 这两步一步都不能少 注意&#xff01;

【UnityRPG游戏制作】NPC交互逻辑、动玩法

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;就业…

信息泄露.

一&#xff0c;遍历目录 目录遍历&#xff1a;没有过滤目录相关的跳转符号&#xff08;例如&#xff1a;../&#xff09;&#xff0c;我们可以利用这个目录找到服务器中的每一个文件&#xff0c;也就是遍历。 tipe&#xff1a;依次点击文件就可以找到flag 二&#xff0c;phpi…

栈的磁盘优化:降低存取成本的算法与实现

栈的磁盘优化&#xff1a;降低存取成本的算法与实现 问题背景简单实现方法的分析实现方法PUSH操作POP操作成本分析渐近分析 优化实现方法实现方法成本分析渐近分析 进一步优化&#xff1a;双页管理策略实现方法管理策略成本分析 伪代码示例C代码示例结论 问题背景 在具有有限快…

【JAVA基础之反射】反射详解

&#x1f525;作者主页&#xff1a;小林同学的学习笔录 &#x1f525;mysql专栏&#xff1a;小林同学的专栏 1.反射 1.1 概述 是在运行状态中&#xff0c;对于任意一个类&#xff0c;都能够知道这个类的所有属性和方法&#xff1b; 对于任意一个对象&#xff0c;都能够调用它…

15、ESP32 Wifi

ESP32 的 WIFI 功能是模块内置的&#xff0c;通过 ESP32 的基础库调用一些函数就可以轻松使用它。 Wifi STA 模式&#xff1a; 让 ESP32 连接附近 WIFI&#xff0c;可以上网访问数据。 // 代码显示搜索连接附近指定的 WIFI // 通过 pin 按键可断开连接#include <WiFi.h>…

C语言实现左旋字符串、左旋字符串找子串、杨氏矩阵找数字、 判断有序数列等介绍

文章目录 前言一、左旋字符串1. 左旋字符串12. 左旋字符串2 二、杨氏矩阵1. 结构体返回数字在杨氏矩阵中的位置2. 行列数字的地址返回数字在杨氏矩阵中的位置 三、一个字符串左旋能否得到另一个字符串1. 一个一个左旋并判断2. 使用库函数 四、判断有序数列总结 前言 C语言实现…

ubuntu修改/etc/resolve.conf总是被重置

ubuntu修改/etc/resolve.conf总是被重置 其实处理来很简单&#xff0c;根据英文提示删除/etc/resolve.conf,那是一个软链接&#xff0c;重新创建/etc/resolve.conf rm /etc/resolve.conf vi /etc/resolve.conf 添加nameserver 223.5.5.5

抖音TikTok34.5.3最新解锁全球绿色版

软件名称】TikTok 【软件版本】v34.4.5 【软件大小】173m 【适用平台】安卓 【软件简介】 TikTok是一款玩转音乐创意的短影音应用&#xff0c;更是年轻人的交友社群。在这里每个人都可以拍出 属于自己的创意影片&#xff0c;跟着音乐的节奏&#xff0c;你可以尽情拍 摄多种…

计算机毕业设计PHP+vue体检预约管理系统d1yu38

防止在使用不同数据库时&#xff0c;由于底层数据库技术不同造成接口程序紊乱的问题。通过本次系统设计可以提高自己的编程能力&#xff0c;强化对所学知识的理解和运用 本系统是一个服务于医院先关内容的网站&#xff0c;在用户打开网站的第一眼就要明白网站开发的目的&#x…

深度学习500问——Chapter08:目标检测(6)

文章目录 8.3.7 RetinaNet 8.3.7 RetinaNet 研究背景 Two-Stage 检测器&#xff08;如Faster R-CNN、FPN&#xff09;效果好&#xff0c;但速度相对慢。One-Stage 检测器&#xff08;如YOLO、SSD&#xff09;速度快&#xff0c;但效果一般。 作者对one-stage检测器准确率不高…