稀疏矩阵的一般转置
2014-05-01 18:57
211 查看
人类为他不能解决的问题没法就算了,但对于小问题还能看半天看不出来,以为问题是在其他方面,该是多么痛苦的事啊!我以前说的话:偏见与无知相比,离真理更远啊~~
#include <stdio.h> #define MAXSIZE 12500 typedef struct { int i,j; int e; }triple; typedef struct{ triple data[MAXSIZE+1]; int mu,nu,tu; }tsmatrix; int createsmatrix(tsmatrix &M) { int i,m,n,e; scanf("%d%d%d",&M.mu,&M.nu,&M.tu); for(i=1;i<=M.tu;i++) { scanf("%d%d%d",&m,&n,&e); M.data[i].i=m; M.data[i].j=n; M.data[i].e=e; } return 1; } int transposesmatrix(tsmatrix M,tsmatrix &T) { int p,q,col; T.mu=M.mu; T.nu=M.nu; T.tu=M.tu; if(T.tu) { q=1; for(col=1;col<=M.nu;++col) for(p=1;p<=M.tu;++p) if(M.data[p].j==col) { T.data[q].i=M.data[p].j; T.data[q].j=M.data[p].i; T.data[q].e=M.data[p].e; ++q; } } return 1; } int printsmatrix(tsmatrix &M) { int i; for(i=1;i<=M.tu;i++) printf("%d %d %d\n",M.data[i].i,M.data[i].j,M.data[i].e); return 1; } void main() { tsmatrix M,T; createsmatrix(M); transposesmatrix(M,T); printsmatrix(T); }
相关文章推荐
- 稀疏矩阵转置
- 稀疏矩阵三元组求转置
- 稀疏矩阵-压缩存储-列转置法- 一次定位快速转置法
- 稀疏矩阵的普通转置与快速转置算法
- C语言:稀疏矩阵的转置
- 已知一稀疏矩阵的三元组表, 求该矩阵转置矩阵的三元组表
- 数组与广义表_稀疏矩阵的压缩存储_三元组做存储结构_矩阵转置
- 【数据结构】稀疏矩阵的压缩存储和转置算法(C++代码)
- 数据结构--稀疏矩阵(转置)
- 稀疏矩阵的转置
- 稀疏矩阵的存储方式及其快速转置的实现
- 【代码】稀疏矩阵的压缩存储与转置算法
- 5.3矩阵的压缩存储(稀疏矩阵转置和快速转置)
- 稀疏矩阵的运算(相乘,输出,转置,相加)
- 稀疏矩阵的压缩存储及转置
- 稀疏矩阵转置算法-
- 稀疏矩阵的快速转置
- 稀疏矩阵的压缩存储与转置
- 稀疏矩阵的转置
- 稀疏矩阵的转置操作及其乘法操作