本篇文章介绍了,在C中实现矩阵乘法的一种高效的方法。需要的来源gaodai$ma#com搞$$代**码网朋友参考下
如何计算矩阵乘法,这个大家都知道。通常情况下,我们都是用以下代码实现的:
代码如下:
for(i=0;i<n;++i)
for(j=0;j<n;++j){
sum=0;
for(k=0;k<n;++k)
sum+=A[i][k]*B[k][j];
C[i][j]+=sum;
}
for(j=0;j<n;++j){
sum=0;
for(k=0;k<n;++k)
sum+=A[i][k]*B[k][j];
C[i][j]+=sum;
}
但是考虑了高速缓存的问题后,其实有一种更好的实现方式:
代码如下:
for(i=0;i<n;++i)
for(k=0;k<n;++k){
r=A[i][k];
for(j=0;j<n;++j)
C[i][j]+=r*B[k][j];
}
以上就是C中实现矩阵乘法的一种高效的方法的详细内容,更多请关注gaodaima搞代码网其它相关文章!