数据结构 矩阵的转置.docx

数据结构 矩阵的转置.docx

ID:50383682

大小:16.23 KB

页数:11页

时间:2020-03-08

数据结构 矩阵的转置.docx_第1页
数据结构 矩阵的转置.docx_第2页
数据结构 矩阵的转置.docx_第3页
数据结构 矩阵的转置.docx_第4页
数据结构 矩阵的转置.docx_第5页
资源描述:

《数据结构 矩阵的转置.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#defineMAXSIZE12500#defineOK1#defineERROR0#defineOVERFLOW-2typedefintStatus;typedefintElemType;typedefstruct{inti,j;inte;}Triple;typedefstruct{Tripledata[MAXSIZE+1];intmu,nu,tu;}TSMatrix;StatusCreateSMatrix(TSMatrix&M){intw,m,n;while(1){printf("请输入行:");sca

2、nf("%d",&M.mu);if(M.mu>0){break;}if(M.mu<=0){printf("行不能为0");continue;}}while(1){printf("请输入列:");scanf("%d",&M.nu);if(M.nu>0){break;}if(M.nu<=0){printf("列不能为0");continue;}}printf("请输入非零元素:");scanf("%d",&M.tu);for(w=1;w<=M.tu;w++){printf("请输入元素所在行,列,元素值:");scanf("%d%d%d",&M.data[w].i,

3、&M.data[w].j,&M.data[w].e);if(M.data[w].i<=0

4、

5、M.data[w].j<=0

6、

7、M.data[w].i>M.mu

8、

9、M.data[w].j>M.nu){printf("输入错误1!");w--;}for(m=1;m<=w;m++){for(n=0;n

10、);w--;break;}elseif(M.data[m].i==M.data[n].i&&M.data[m].j==M.data[n].j){printf("输入重复!");w--;break;}}}}returnOK;}StatusShowSMatrix(TSMatrixM){inti,j,t=1;printf("矩阵为:");for(i=1;i<=M.mu;i++){for(j=1;j<=M.nu;j++){if(M.data[t].i==i&&M.data[t].j==j){printf("%dt",M.data[t].e);t++;}elseprintf

11、("0t");}printf("");}returnOK;}StatusTransposeSMatrix(TSMatrixM,TSMatrix&T){T.mu=M.nu;T.nu=M.mu;T.tu=M.tu;intcol;intp,q;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;}}}}printf

12、("矩阵转置成功!");printf("转置后的");ShowSMatrix(T);returnOK;}StatusDestorySMatrix(TSMatrix&M){M.mu=0;M.nu=0;M.tu=0;returnOK;}StatusFastTransposeSMatrix(TSMatrixM,TSMatrix&T){intnum[100];intcpot[100];intcol,i,p,q;T.mu=M.nu;T.nu=M.mu;T.tu=M.tu;if(T.tu){for(col=1;col<=M.nu;++col)num[col]=0;for(i=1;i

13、<=M.tu;++i){col=M.data[i].j;++num[col];}cpot[1]=1;for(col=2;col<=M.nu;++col)cpot[col]=cpot[col-1]+num[col-1];for(p=1;p<=M.tu;++p){col=M.data[p].j;q=cpot[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;++cpot[col];}}printf("矩阵快速转置成功

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。