大数据结构课程设计(稀疏矩阵运算器).doc

大数据结构课程设计(稀疏矩阵运算器).doc

ID:58576705

大小:63.00 KB

页数:32页

时间:2020-10-19

大数据结构课程设计(稀疏矩阵运算器).doc_第1页
大数据结构课程设计(稀疏矩阵运算器).doc_第2页
大数据结构课程设计(稀疏矩阵运算器).doc_第3页
大数据结构课程设计(稀疏矩阵运算器).doc_第4页
大数据结构课程设计(稀疏矩阵运算器).doc_第5页
资源描述:

《大数据结构课程设计(稀疏矩阵运算器).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、*****大学数据结构课程设计说明书题目:稀疏矩阵运算器学生:学号:专业:班级:指导教师:2013年7月24日稀疏矩阵运算器摘要摘要:设计一稀疏矩阵运算器。实现两个矩阵的相加、相减和相乘的功能。用“带行逻辑信息”的三元组顺序表表示稀疏矩阵,实现两个矩阵相加、相减和相乘的运算,采用分级的设计方法,分别设计出加、减、乘运算器的子程序,相加运算时只要依次存储、扫描两矩阵的行、列数,若行、列数相等,再取行、列下标相等的元素,相加后存入结果矩阵。相减运算与相加运算相同,同样取行、列下标相等的元素,相减后存入

2、结果矩阵。相乘运算要先判断两矩阵能否相乘。若能相乘,则取行、列号相对应的元素进行相乘及相加,最后将对应元素存入结果矩阵中。通过实验表明本程序能够进行稀疏矩阵的相加,相减,相乘运算。具备矩阵的加、减、乘功能。关键词:相加运算器;相减运算器;相乘运算器数据结构课程设计任务书针对本课程设计,完成以下课程设计任务:1、熟悉系统实现工具和上级环境。2、根据课程设计任务,查阅相关资料。3、针对所选课题完成以下工作:(1)、需求分析(2)、概要设计(3)、详细设计(4)、编写源程序(5)、静态走查程序和上机调试

3、程序4、书写上述文档和撰写课程设计报告。目录稀疏矩阵运算器I摘要II课程设计任务书III课程设计正文Ⅳ第一章问题描述5第二章需求分析6第三章概要设计9第四章详细设计194.1函数说明104.2算法分析19第五章调试分析21第六章测试结果23第七章课程设计总结24参考文献24附录(程序清单)33第一章问题描述一、问题描述:稀疏矩阵是指那些多数元素为零的矩阵,利用“稀疏”特点进行存储和计算可以大大节省存储空间,提高计算效率,实现一个能进行稀疏矩阵基本运算的运算器。二、基本要求:以“带行逻辑信息”的三元

4、组顺序表表示稀疏矩阵,实现两个矩阵相加、相减和相乘的运算。稀疏矩阵的输入形式采用三元组表示,而运算结果的矩阵则以通常的阵列形式列出。第二章需求分析1、运算器程序以用户和计算机的对话方式执行,数组的建立方式为边输入边建立。2、由题目要求可知:首先应输入矩阵的行数、列数和非零个数,并判别给出的两个矩阵的行、列数对于所要求作的运算是否相匹配。3、程序可以对三元组的输入顺序不加以限制;根据对矩阵的行列,三元组作直接插入排序,从而进行运算时,不会产生错误。4、在用三元组表示稀疏矩阵时,相加、相减和乘积所得结

5、果矩阵应该另生成,为了算法方便,使用二维数组存放。程序在VisualC++6.0环境下设计。程序执行的命令为:1.稀疏矩阵加法;2.稀疏矩阵减法;3.稀疏矩阵乘法;第一章概要设计1、三元组结构定义:typedefstruct{//三元组结构inti,j;//矩阵行下标和列下标inte;//值}triple;2、稀疏矩阵结构定义:typedefstruct//矩阵结构{tripledata[MAXSIZE+1];intm,n,t;//矩阵的行数、列数、非零元个数}tripletable;3、两个稀疏

6、矩阵相加函数:Add(tripletableM,tripletableT)4、两个稀疏矩阵相减函数:mut(tripletableM,tripletableT)5、两个稀疏矩阵相乘函数:mul(tripletableM,tripletableT)6、主函数:voidmain(){初始化;switch{接受命令;选择处理命令;}}7、本程序有四个模块,调用关系如下:主程序模块矩阵输入模块矩阵运算模块矩阵输出模块8、本程序的流程图:开始选择要执行的操作作选择3,进行矩阵乘法运算选择1,进行矩阵加法运算

7、选择2,进行矩阵减法运算输入n个矩阵A的行数、列数、非零元个数输出结果结束第一章详细设计4.1函数说明:1、稀疏矩阵的三元组顺序表存储表示:typedefstruct{//三元组结构inti,j;//行下标和列下标inte;//值}triple;2、稀疏矩阵存储表示:typedefstruct//矩阵结构{tripledata[MAXSIZE+1];intm,n,t;//矩阵的行数、列数、非零元个数}tripletable;3、主要函数:voidAdd();voidcut();voidmul();

8、intmain();4.2算法分析:设计一个矩阵类实现矩阵的运算:classtripletable(包含矩阵的各种运算函数)。输入矩阵(以三元组形式输入非零元),输出矩阵(阵列形式)。{tripletableM;intm,n,t,i,j,e,k,c,d;inta[MAXSIZE][MAXSIZE];cout<<"输入稀疏矩阵M的行数,列数和非零元个数:";cin>>M.m>>M.n>>M.t;for(k=1;k<=M.t;k++){cout<<"输入第"<

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

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

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