2022年稀疏矩阵的压缩存储 .pdf

上传人:H****o 文档编号:39723048 上传时间:2022-09-07 格式:PDF 页数:6 大小:371.64KB
返回 下载 相关 举报
2022年稀疏矩阵的压缩存储 .pdf_第1页
第1页 / 共6页
2022年稀疏矩阵的压缩存储 .pdf_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《2022年稀疏矩阵的压缩存储 .pdf》由会员分享,可在线阅读,更多相关《2022年稀疏矩阵的压缩存储 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、稀疏矩阵的压缩存储(1)稀疏矩阵的定义:在矩阵中,多数的元素为0,则称此矩阵为稀疏矩阵三元组类:/定义三元组publicclass Triple int row;/行号int col;/列号doubleval;/元素值/对各项数据进行初始化public Triple(int row,int col,double val)this.row=row;this.col=col;this.val=val;public String toString()/输出三元组项return(+row+,+col+,+val+);(2)用三元组顺序表实现稀疏矩阵:(3)其中包括了稀疏矩阵的转置:注:(2)(3)放到

2、了一块import java.util.ArrayList;/稀疏矩阵的定义publicclass SparseMatrix 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 6 页 -privateintrows;/行privateintcols;/列private ArrayList terms;/保存三元组/创建public SparseMatrix(int rows,int cols,ArrayList t)/TODO Auto-generated constructor stubthis.rows=rows;this.cols=cols;terms=t;/输出public

3、void output()System.out.println(稀疏矩阵的总行数和总列数分别为:+rows+,+cols);for(int i=0;i terms.size();i+)System.out.print(terms.get(i);/转置 返回结果为 SparseMatrix型public SparseMatrix transpose()/保存转置后的结果SparseMatrix t=new SparseMatrix(cols,rows,new ArrayList();if(terms.size()=0)/空矩阵名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 6 页

4、-return t;for(int k=1;k=cols;k+)/列数作为最外层循环的终止条件每次扫描原稀疏矩阵的一列for(int j=0;j转置import java.util.ArrayList;publicclass Matrix publicstaticvoid main(String args)ArrayList list=new ArrayList();/辅助 SparseMatrix的构造器list.add(new Triple(1,3,3);list.add(new Triple(1,4,6);list.add(new Triple(2,3,-9);list.add(new

5、Triple(3,1,8);名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 6 页 -list.add(new Triple(3,3,4);list.add(new Triple(3,5,6);list.add(new Triple(4,2,8);list.add(new Triple(5,3,-3);/稀疏矩阵行列数分别为6,5SparseMatrix s=new SparseMatrix(6,5,list);System.out.println(未转置之前的矩阵为(只输出非零元素):);s.output();System.out.println();System.out.pr

6、intln(转置之后的矩阵为(只输出非零元素):);SparseMatrix ss=s.transpose();ss.output();上述测试稀疏矩阵的转置程序中定义的矩阵的向量cpot 的值以及num 的值:col 1 2 3 4 5 numcol 1 1 4 1 1 cpotcol 1 2 3 7 8(4)1结构定义:ADT SparseMatrix 数据对象:D=aij|i=1,2,m;j=1,2,.,n;aijElemset,m 和 n 分别称为矩阵的行数和列数 数据关系:R=Row,Col Row=|1=i=m,1=j=n-1 Col=|1=i=m-1,1=j=n 基本操作:名师资

7、料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 6 页 -SparseMatrix(int rows,int cols,ArrayList t)操作结果:创建稀疏矩阵output()初始条件:稀疏矩阵已存在操作结果:打印稀疏矩阵transpose()初始条件:稀疏矩阵已存在操作结果:返回稀疏矩阵的转置ADT SparseMatrix 2稀疏矩阵的存储结构的定义:class SparseMatrix privateintrows;/行privateintcols;/列private ArrayList terms;/保存三元组 三元组 Triple:publicclass Triple

8、int row;/行号int col;/列号doubleval;/元素值/对各项数据进行初始化public Triple(int row,int col,double val)名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 6 页 -this.row=row;this.col=col;this.val=val;public String toString()/输出三元组项return(+row+,+col+,+val+);(5)基本操作:SparseMatrix(int rows,int cols,ArrayList t)创建稀疏矩阵output()打印稀疏矩阵transpose()返回稀疏矩阵的转置(6)应用:即为(3)模块:稀疏矩阵的转置(7)实验结果:名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 6 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁