哪位高手帮忙完善一下这个小程序?谢啦! 20
intMulTSMatrix(RLSMatrixM,RLSMatrixN,RLSMatrix*Q)//稀疏矩阵相乘{intcol=0,p,k,row;intctemp[M...
int MulTSMatrix(RLSMatrix M,RLSMatrix N,RLSMatrix *Q) //稀疏矩阵相乘
{
int col=0,p,k,row;
int ctemp[MAXSIZE+1];
if(M.nu!=N.mu)
{
printf("你的输入不满足矩阵相乘的条件!\n");
return 0;
}
Q->mu=M.mu;
Q->nu=N.nu;
Q->tu=0;
if(M.tu*N.tu!=0)
{
col=-1;
for(k=1;k!=M.tu;k++)
{if(M.data[k].i!=col)
{
//ctemp[]=0;//当前行铬元素累加器清零
if(col!=-1)
{
?????
//将ctemp中的非零元 存储到Q.DATA;
}
col=M.data[k].i;
}
for (p=1;p<=N.tu;p++)
if (M.data[k].j==N.data[p].i)
ctemp[N.data[p].j]+=M.data[k].e*N.data[p].e;
}
??????
//将最后一次ctemp[]中的非零元压缩存储到Q.data;
}} 展开
{
int col=0,p,k,row;
int ctemp[MAXSIZE+1];
if(M.nu!=N.mu)
{
printf("你的输入不满足矩阵相乘的条件!\n");
return 0;
}
Q->mu=M.mu;
Q->nu=N.nu;
Q->tu=0;
if(M.tu*N.tu!=0)
{
col=-1;
for(k=1;k!=M.tu;k++)
{if(M.data[k].i!=col)
{
//ctemp[]=0;//当前行铬元素累加器清零
if(col!=-1)
{
?????
//将ctemp中的非零元 存储到Q.DATA;
}
col=M.data[k].i;
}
for (p=1;p<=N.tu;p++)
if (M.data[k].j==N.data[p].i)
ctemp[N.data[p].j]+=M.data[k].e*N.data[p].e;
}
??????
//将最后一次ctemp[]中的非零元压缩存储到Q.data;
}} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询