Algorithm 矩阵乘法动态规划
q=成本/标量乘法 q=m[i,k]+m[k+1,j]+p[i-1]*p[k]*p[j] 假设A是一个10×30的矩阵,B是一个30×5的矩阵,C是一个5×60的矩阵。那么 (AB)C=(10×30×5)+(10×5×60)=1500+3000=4500次运算 A(BC)=(30×5×60)+(10×30×60)=9000+18000=27000次运算Algorithm 矩阵乘法动态规划,algorithm,Algorithm,q=成本/标量乘法 q=m[i,k]+m[k+1,j]+p[i-1]*p[k]*p[j] 假设A是一个10×30的矩阵,B是一个30×5的矩阵,C是一个5×60的矩阵。那么 (AB)C=(10×30×5)+(10×5×60)=1500+3000=4500次运算 A(BC)=(30×5×60)+(10×30×60)=9000+18000=27000次运算 为什么需要(p[i-1]*p[k]*p[j])?m[i,k]给出了将[i,k]范围内的所有矩阵相乘的成本m[k+1,j]给出了将[k+1,j]范
为什么需要(p[i-1]*p[k]*p[j])?
m[i,k]
给出了将[i,k]
范围内的所有矩阵相乘的成本m[k+1,j]
给出了将[k+1,j]
范围内的所有矩阵相乘的成本。处理完这两个子范围后,我们剩下两个矩阵(一个是第一个范围的乘法结果,另一个是第二个范围的乘法结果)。所以我们需要将它们相乘的成本加到答案中。在上面的例子中,我只使用了m[i,k]+m[k+1,j]而不是(p[i-1]*p[k]*p[j])kraskevich@chirag您根本没有在那里使用m[i,k]
或m[k+1,j]
。您只需计算将A
乘以B
的成本,然后再乘以(A*B)
和C
。