设 A1、A2、A3 和 A4 是四个维度分别为 10 x 5、5 x 20、20 x 10 和 10 x 5 的矩阵。使用基本矩阵乘法方法求乘积 A1A2A3A4 所需的最小标量乘法次数为
(一) 1500
(二) 2000
(C) 500
(四) 100答案:(一)
解释:我们有很多方法做矩阵链乘法,因为矩阵乘法是结合的。换句话说,无论我们如何将乘积括起来,得到的矩阵链乘法的结果将保持不变。这里我们有四个矩阵 A1、A2、A3 和 A4,我们将有:
((A1A2)A3)A4 = ((A1(A2A3))A4) = (A1A2)(A3A4) = A1((A2A3)A4) = A1(A2(A3A4))。
但是,我们将乘积括起来的顺序会影响计算乘积所需的简单算术运算的数量或效率。这里,A1 是 10 × 5 矩阵,A2 是 5 x 20 矩阵,A3 是 20 × 10 矩阵,A4 是 10 × 5。
如果我们分别将两个 lxm 和 mxn 阶的矩阵 A 和 B 相乘,那么 A 和 B 的乘法中标量乘法的次数将是 lxmxn。
然后,
以下矩阵序列所需的标量乘法次数为:
A1((A2A3)A4) = (5 x 20 x 10) + (5 x 10 x 5) + (10 x 5 x 5) = 1000 + 250 + 250 = 1500。
所有其他带括号的选项将需要超过 1500 次的乘法次数。
这个问题的测验