矩阵的不同运算
原文: https://www.geeksforgeeks.org/different-operation-matrices/
有关矩阵的介绍,您可以参考以下文章:矩阵介绍
在本文中,我们将讨论关于矩阵及其属性的各种运算:
矩阵加法:
两个矩阵A[m * n]
和B[m * n]
相加得出矩阵C[m * n]
。C
的元素是A
和B
中相应元素的总和,可以显示为:
矩阵相加的算法可以写成:
for i in 1 to m
for j in 1 to n
cij = aij + bij
要点:
-
矩阵加法是可交换的,这意味着
A + B = B + A
-
矩阵的加法是关联的,这意味着
A + (B + C) = (A + B) + C
-
矩阵
A, B
和A + B
的顺序始终相同 -
如果
A
和B
的顺序不同,则无法计算A + B
-
加法运算的复杂度为
O(m * n)
,其中m * n
是矩阵的阶数
矩阵减法:
两个矩阵A[m * n]
和B[m * n]
的减法得到矩阵C[m * n]
。 C
的元素是A
和B
中相应元素的差,可以表示为:
矩阵相减的算法可写为:
for i in 1 to m
for j in 1 to n
cij = aij-bij
要点:
-
矩阵相减是不可交换的,这意味着
A-B≠B-A
-
矩阵相减是非缔合的,这意味着
A - (B - C) ≠ (A - B) - C
-
矩阵
A, B
和A-B
的顺序始终相同 -
如果
A
和B
的顺序不同,则无法计算A-B
-
减法运算的复杂度为
O(m * n)
,其中m * n
是矩阵的阶数
矩阵乘法:
两个矩阵A[m * n]
和B[n * p]
的乘法给出矩阵C[m * p]
。 这意味着A
中的列数必须等于B
中的行数才能计算C = A * B
。 要计算元素c11
,请将A
的第一行的元素与B
的第一列相乘,然后将它们相加(5 * 1 + 6 * 4
),如下所示:
m * n
阶矩阵A
,与n * p
阶矩阵B
相乘的算法可以写成:
for i in 1 to m
for j in 1 to p
cij = 0
for k in 1 to n
cij += aik*bkj
要点:
-
矩阵的乘法是不可交换的,这意味着
A * B ≠ B * A
-
矩阵相乘是关联的,这意味着
A * (B * C) = (A * B) * C
-
为了计算
A * B
,A
中的列数必须等于B
中的行数 -
A * B
的存在并不意味着B * A
的存在 -
乘法运算的复杂度(
A * B
)为O(m * n * p)
,其中m * n
和n * p
分别为A
和B
的阶数 -
计算为
A * B
的矩阵C
的阶为m * p
,其中m * n
和n * p
分别为A
和B
的阶
版权属于:月萌API www.moonapi.com,转载请注明出处