欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构与课程设计---稀疏矩阵

    • 资源ID:1394450       资源大小:103KB        全文页数:9页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    数据结构与课程设计---稀疏矩阵

    1、 实验课程名称 数据结构与课程设计 专 业 班 级 10 级计科(2)班 学 生 姓 名 学 号 指 导 教 师 2012 至 2013 学年第 1 学期第 4 至 5 周 目录 1 概述. - 1 - 1 系统分析. 错误错误! !未定义书签。未定义书签。 2.1 设计函数建立稀疏矩阵及初始化值和输出稀疏矩阵的值 . - 1 - 2.2 造函数并输出最终稀疏矩阵 1 3 概要设计 1 3.1 存储结构设计 1 3.2 系统功能设计 1 4 详细设计. - 2 - 4.1 稀疏矩阵的存储 - 2 - 4.2 稀疏矩阵的加法 . 2 5 程序代码. - 4 - 6 运行与测试. - 7 - 7

    2、总结与心得 7 8 参考文献 7 - 1 - 1 1 概述概述 掌握稀疏矩阵的加法运算,稀疏矩阵的存储方法,每一个元素可能有多个直接前驱和多个 直接后继。一般情况下都是采用顺序存储方法来表示数组,但有时在实际应用中,一般的顺序 存储方法已经不太实用。有时候用普通存储方法就会造成很大的空间浪费。为了节省存储单元, 用压缩方法只存储非零元素。 2 2 系统分析系统分析 2.12.1 设计函数建立稀疏矩阵及初始化设计函数建立稀疏矩阵及初始化值和输出稀疏矩阵的值值和输出稀疏矩阵的值 本模块要求设计函数建立稀疏矩阵并初始化。在创建稀疏矩阵时需要设计稀疏矩阵的加法 和存储方法,出现错误时能够对错误进行判别

    3、处理初始化稀疏矩阵都为空值。在设计输出稀疏 矩阵的值的函数时也要针对两种不同的情况分别编制函数才能准确的输出稀疏矩阵。在对稀疏 矩阵进行初始化时只输入非零元素的值和它所在的所在行及所在列。在对稀疏矩阵输出时以矩 阵的完整形式输出。 2.22.2 造函数并输出最终稀疏矩阵造函数并输出最终稀疏矩阵 本模块要求设计加法函数对两个矩阵进行运算并输出最终的稀疏矩阵,操作后的结果矩阵 的行、列数需要综合多方面情况来确定。这些函数也是整个程序的难点需要灵活运用数组及指 针的特点。 3 3 概要设计概要设计 3.13.1 存储结构设计存储结构设计 以一维数组顺序存放非零元素的行号、列号和数值,行号-1 作为结

    4、束标志。稀疏矩阵的存 储类似于建立顺序存储稀疏矩阵的三元组表。假设 A 为一个稀疏矩阵,B 为一个存储对应于 A 矩阵生成的数组。用一个二重循环来判断每个矩阵元素是否为零,若不为零,则将其行、列下 标及其值存入到一维数组 B中对应的元素中。 3.23.2 系统功能设计系统功能设计 设计稀疏矩阵的加法算法,假设两个稀疏矩阵 A 和 B,它们均为 m 行 n 列,分别存放在数组 A 和 B 中,编写矩阵的加法实现 C=A+B 的算法,C 矩阵存放在数组 C 中。根据设计要求,首先要将一 个稀疏矩阵对应存储到一个一维数组中,然后在进行矩阵加法时依次扫描矩阵 A 和 B 的行列值, - 2 - 并以行

    5、优先,当行列相同时,将第三个元素值相加的和以及行列号三个元素存入结果数组 C 中; 不相同时,将 A 或 B 的三个元素直接存入结果数组中。 4 4 详细设计详细设计 4.1 4.1 稀疏矩阵的存储稀疏矩阵的存储 void(CreateMatrix(int Amn,int B50) /转储稀疏矩阵的算法 int i,j,k=0; for(i=0;im;i+) for(j=0;jn;j+) if(Aij!=0) Bk=i;k+; Bk=j;k+; Bk=Aij;k+; Bk=-1; /非零元素存储结束 4.2 4.2 稀疏矩阵的加法稀疏矩阵的加法 void MatrixAdd(int Amax,

    6、int Bmax,int Cmax) int i=0,j=0,k=0; while(Ai!=-1 Ck+1=Ai+1; Ck+2=Ai+2-Bj+2; k=k+3; i=i+3; j=j+3; else if(Ai+1Bj+1) /B 的列小于 A 的列,将 A 的三个元素直接存入 C 中 Ck=Ai; Ck+1=Ai+1; Ck+2=Ai+2; - 3 - k=k+3; i=i+3; else /B 的列小于 A 的列,将 B 的三个元素直接存入 C 中 Ck=Bj; Ck+1=Bj+1; Ck+2=Bj+2; k=k+3; j=j+3; else if(AiBj) /A 的行小于 B 的行,将 A 的三个元素直接存入


    注意事项

    本文(数据结构与课程设计---稀疏矩阵)为本站会员(毕****文)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583