| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 562 人关注过本帖
标题:稀疏矩阵的转置问题
只看楼主 加入收藏
hdshdzh
Rank: 2
等 级:论坛游民
帖 子:77
专家分:11
注 册:2010-5-13
结帖率:92.31%
收藏
已结贴  问题点数:10 回复次数:1 
稀疏矩阵的转置问题
B存放转置前,用三元组表示,C为转置后
void transpmatrix(spmatrix B,spmatrix C)
{
int i,j,t,m,n;
int x[100]       /*用来存放B中每一列非0元素个数*/
int y[100]                 /*存放C中每一行非0元素个数*/
m=B[0][0];n=B[0][1];t=B[0][2];
C[0][0]=n;C[0][1]=m;C[0][2]=t;
if(t>0)
{
for(i=0;i<n;i++) x[i]=0; /*初始化数组*/
for(i=1;i<=t;i++)
x[B[i][1]=x[B[i][1]]+1`;   /*统计B中每一列非0元素*/
/*求矩阵C中每一行非0元素三元组的起始位置*/
y[0]=1;
for(i=1;i<n;i++)
y[i]=y[i-1]+x[i-1];  
for(i=1;i<=t;i++)
{  /*将B中非0元素交换行号,列号后写入C中其最终的位置上*/
j=y[B[i][1]];      这个怎么解,它是怎样存放的,它的形式怎么样
C[j][0]=B[i][1];
C[j][1]=B[i][0];
C[j][2]=B[i][2];
y[B[i][1]]=j+1;      还有这个,不理解
}
}
}谁能帮我分析一下这个函数

[ 本帖最后由 hdshdzh 于 2010-6-29 19:04 编辑 ]
搜索更多相关主题的帖子: 矩阵 
2010-06-28 10:18
zglcx123
Rank: 2
等 级:论坛游民
帖 子:60
专家分:10
注 册:2007-7-2
收藏
得分:10 
找我前几天发的帖
2010-06-29 17:43
快速回复:稀疏矩阵的转置问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016306 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved