数据结构(c语言版)程海英-上机4

数据结构(c语言版)程海英-上机4

ID:35504799

大小:70.38 KB

页数:6页

时间:2019-03-25

数据结构(c语言版)程海英-上机4_第1页
数据结构(c语言版)程海英-上机4_第2页
数据结构(c语言版)程海英-上机4_第3页
数据结构(c语言版)程海英-上机4_第4页
数据结构(c语言版)程海英-上机4_第5页
资源描述:

《数据结构(c语言版)程海英-上机4》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、上机4稀疏矩阵的压缩存储1•问题描述设矩阵A表示一个mXn的稀疏矩阵,其转置矩阵B则是一个nXm的稀疏矩阵,定义矩阵A、B均为三元组表存储类型,设计程序实现求A矩阵的转置矩阵B,并打印输出矩阵B。2•数据结构设计稀疏矩阵三元组表的数据类型:#defineSMAX100〃三元组非零元素的最大个数structSPNode{〃定义三元组inti;〃三元组非零元素的行、列和值intj;intv;structsparmatrix{〃定义稀疏矩阵introws,intcols;intterms;〃稀疏矩阵行、列和非零元素的个数SPNodedata[SMAX];〃三元组表};3•函数说

2、明稀疏矩阵三元组表的基本操作:sparmatrixCreateSparmatrix()〃创建稀疏矩阵sparmatrixTrans(sparmatrixA)〃转置稀疏矩阵〃显示稀疏矩阵voidShowSparmatrix(sparmatrixA)voidSearchSparmatrix(sparmatrixA,ints)〃查找稀疏矩阵中非零元索4•编码实现#include#include#include#defineSMAX100〃三元组非零元素的最大个数structSPNode{inti;intj;intv;}〃

3、定义三元组〃三元组非零元素的行、列和值structsparmatrix{introws,〃定义稀疏矩阵intcols;intterms;〃稀疏矩阵行、列和非零元素的个数SPNodedata

4、SMAX

5、;I•〃三元组表sparmatrixCreateSparmatrix(){sparmatrixA;〃创建稀疏距阵printf("tt请输入稀硫矩阵的行数,列数和非零元个数(用逗号隔开):”);scanf(“%d,%d,%d”,&A.rows,&A.cols,&A.terms);for(intn=0;n<=A.terms=1;n++){printf(Gtt输人非

6、零元值(格式:行号,列号,值):”);scanf("%d,%d,%d",&A.data

7、n].i,&A.data[n].j,&A.data[n].v);}returnA;}sparmatrixTrans(spamatrixA){sparmatrixB;B.rows二A.cols;〃将稀疏矩阵A转置B.cols=A.rows;B.terms二A.terms;for(intn=0;n<=A.terms=l;n++){B.data

8、n].i=A.data

9、n]j;B.data

10、n

11、.j=A.data[n].i;B.data[n].v=A・dara[n]・v;}returnB;}

12、voidShowSpannatrix(sparmatrixA){〃显示稀疏矩阵Bintk;printf(“tt”);for(intx=0;x<=A.rows-1;x++){for(inty=0;y<=A.cols-l;y++){k=0;for(intn=O;n<=A.terms-l;n++){if((A・data[n]・i==x)&&(A.data[n].j==y)){printf(“%8d”,A.data[n].v);k=l;}}if(k==0)printf(“%8d”,k);}〃查找稀疏矩阵中非零元素printf(“tt”);voidSeachSpar

13、matrix(sparmatrixA,ints){intn,t;t=A.terms;for(n=0;n

14、.terms=0;while(ch){printf(HH);printf("tt稀疏矩阵的三元组存储”);printf(nttprintf(Htt1printf(utt2printf(”tt3printf("tt4新建”);转置n);查找”);显示n););n););printf(utt0退出printf(Htt<1^11•卜•卜•卜•卜•卜•卜•卜•卜•卜•卜八printf(utt请输入选择(0-4):");scanf(n%d",&choic

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

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

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