稀疏矩阵的运算.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
稀疏矩阵的运算.doc

实验课程名称 交通资询系统设计 专 业 班 级 10级计科(1)班 学 生 姓 名 学 号 指 导 教 师 2012至2013学年第 一 学期第 1 至 18 周 目 录 第1章 概述 2 第2章 系统分析 3 2.1 算法的思想 3 2.2 需求分析及研究意义 3 2.3 研究意义 3 第3章 概要设计 3 3.1 课程设计的方案设计论证 3 第4章 详细设计 4 4.1 主程序模块 4 4.2 稀疏矩阵的存储 4 4.3 稀疏矩阵加法 4 第5章 运行与测试 4 第6章 总结和心得 4 6.1 实验总结 4 6.2 心得 4 参考文献 5 伪代码 5 第1章 概述 数组是一种常用的数据类型,几乎所有的程序设计语言都把数据类型设为固有的类型。他的应用非常广泛。多维数组的一个特殊代表就是稀疏矩阵的运算。 稀疏矩阵在现实中有很多应用,因此稀疏矩阵的计算近年来被广泛地研究. 稀疏矩阵是指多数元素为0的矩阵,利用素数特点进行存储和计算可以大大节省存储空间,提高计算效率,实现一个能进行稀疏加法的运算。 系统分析 2.1 算法的思想 (1)输入存储矩阵个算法。 (2)存储稀疏矩阵用三元组表示。 (3)稀疏矩阵的加法算法编写。 (4)输出稀疏矩阵。 2.2 需求分析及研究意义 (1)首先输入矩阵的行数和列数,并判别给出的两个矩阵的行数,列数对于所求的运算是否匹配。 (2)程序存储用三元组存储表表示,按行优先表示。 (3)三元组表示稀疏矩阵,矩阵的相加所得结果矩阵另生成。 2.3 研究意义 矩阵加法了解:矩阵之间也可以相加。把两个矩阵对应位置的单个元素相加,得到的新矩阵就是加法的结果。由其运算法则可知,只有行数和列数相同的矩阵才能进行加法运算。 矩阵之间相加没有顺序,假设A、B都是矩阵,则A+B=B+A。通常认为矩阵没有减法,若要与一个矩阵相减,在概念上是引入一个该矩阵的负矩阵,然后相加。A-B是A+(-B)的简写。 第3章 概要设计 3.1 课程设计的方案设计论证 (1)输入存储矩阵的算法。 (2)存储稀疏矩阵有用三元组表示。 (3)稀疏矩阵的加法算法编写。 (4)输出稀疏矩阵。 第4章 详细设计 4.1 主程序模块 其中主函数为: main(){ 定义以及初始化 从文件中读取数据,输出矩阵 调用转置和加法函数,输出转置矩阵以及加法矩阵 } 4.2 稀疏矩阵的存储 void CreateMatrix(int A[m][n],int B[50]) { int i,j,k=0; for (i=0;im;i++) for (j=0;jn;j++) if(A[i][j]!=0){ B[k]=i;k++; B[k]=j;k++; B[k]=A[i][j];k++; } B[k]=-1; } 4.3 稀疏矩阵加法 稀疏矩阵求值模块包括:矩阵相加模块AddRLSMatrix(); AddSMatrix(M,N,Q); 初始条件:稀疏矩阵M与N的行数和列数对应相等。 操作结果:求稀疏矩阵的和Q=M+N。 第5章 运行与测试 第6章 总结和心得 6.1 实验总结 首先必须了解稀疏矩阵的概念,存储及矩阵加法运算,三元组顺序表的存储表示。其次对三元组的输入运算、加法算法的输入算法,必须认真查阅书籍或上网了解,认真分析。最后,在对输入程序的运算情况作认真的错误分析,总结出错原因。 6.2 心得 原来我对稀疏矩阵的运算的知识很模糊,通过这次课程设计,我加深了对稀疏矩阵的存储和加法运算的了解,在做课程设计的过程中遇到很多问题,让我知道了自己对很多知识点都掌握的不够。随着这些问题的解决,对之前掌握的不过好的知识点进行了巩固和复习。总之,通过这次课程设计让我明白了自己在很多方面的不足,也让我学到了很多。 参考文献 [1] 数据结构:严蔚敏,吴伟民编著.—北京:清华大学出版社,2007 [2] 数据结构与算法分析:苏仕华编著.—合肥:中国科学技术大学出版社,2004 [3] 数据结构课程设计:苏仕华编著.—北京:清华大学出版社,2002 伪代码 #include stdio.h #define m 6 #define n 8 #define max 50 /*转储稀疏矩阵的算法*/ void creatematrix(int A[m][n],int B[50]) { int i,j,k=0; for(i=0;im;i++) for(j=0;jn

文档评论(0)

蝶恋花 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档