稀疏矩阵的加法,三元组实现矩阵的乘法(4)

时间:2025-07-09

if(M.tu*N.tu){ // Q是非零矩阵

for( arow=1;arow<=M.mu;arow++){

///memset(ctemp,0,N.nu);

for(int x=1;x<=N.nu;x++) // 当前行各元素累加器清零

ctemp[x]=0;

Q.rpos[arow]=Q.tu+1; // 当前行的首个非零元素在三元组中的位置为此行前所有非零元素+1

if(arow<M.mu) tp=M.rpos[arow+1];

else tp=M.tu+1;

for(p=M.rpos[arow];p<tp;p++){ // 对当前行每个非零元素进行操作

brow=M.data[p].j; // 在N中找到i值也操作元素的j值相等的行 if(brow<N.mu) t=N.rpos[brow+1];

else t=N.tu+1;

for(q=N.rpos[brow];q<t;q++){ // 对找出的行当每个非零元素进行操作

ccol=N.data[q].j;

ctemp[ccol] += M.data[p].e*N.data[q].e; // 将乘得到对应值放在相应的元素累加器里面

}

}

for(ccol=1;ccol<=Q.nu;ccol++) // 对已经求出的累加器中的值压缩到Q中 if(ctemp[ccol]){

if(++Q.tu>MAXSIZE) return false;

Q.data[Q.tu].e=ctemp[ccol];

Q.data[Q.tu].i=arow;

Q.data[Q.tu].j=ccol;

}

}

}

OutPutSMatrix(Q);

稀疏矩阵的加法,三元组实现矩阵的乘法(4).doc 将本文的Word文档下载到电脑

上一篇:U型桥台计算

下一篇:寺院管理制度

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219