欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据构造课程设计-稀疏矩阵运算器.docx

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

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

    数据构造课程设计-稀疏矩阵运算器.docx

    数据构造课程设计-稀疏矩阵运算器当前位置:文档视界数据构造课程设计-稀疏矩阵运算器数据构造课程设计-稀疏矩阵运算器【实验目的】深化研究数组的存储表示和实现技术,熟悉广义表存储构造的特性。【需要分析】稀疏矩阵是指那些多数元素为零的矩阵。利用“稀疏特点进行存储和计算能够大大节省存储空间,提高计算效率。实现一个能进行稀疏矩阵基本运算的运算器。要求以带“行逻辑链接信息的三元组顺序表存储稀疏矩阵,实现两矩阵的相加、相减、相乘等运算。输入以三元组表示,输出以通常的阵列形式列出。【软件平台】Windows2000,VisualC6.0或WINTC【概要设计】ADTArray数据对象:D=aij|0ib1-1,0jb2-1数据关系:R=ROW,COLROW=|0ib1-2,0jb2-1COL=|0ib1-1,0jb2-2基本操作:CreateSMatrix(/操作结果:创立稀疏矩阵M.PrintSMatrix(M);/初始化条件:稀疏矩阵M存在./操作结果:输出稀疏矩阵M.AddSMatrix(M,N,/初始化条件:稀疏矩阵M与N的行数和列数对应相等./操作结果:求稀疏矩阵的和Q=M+N.SubSMatrix(M,N,/初始化条件:稀疏矩阵M与N的行数和列数对应相等./操作结果:求稀疏矩阵的差Q=M-N.MultSMatrix(M,N,/初始化条件:稀疏矩阵M的列数等于N的行数./操作结果:求稀疏矩阵的乘积Q=M*N.ADTArray【主程序模块】:voidmain()初始化;do接授命令;处理命令;while(命令!=“退出);【功能模块调用关系图】【具体设计】typedefstructintrow;/行数intcol;/列数intv;/非零元素值triplenode;typedefstructtriplenodedatamaxsize+1;/非零元三元组introwtabmaxrow+1;/各行第一个非零元的位置表intmu,nu,tu;/矩阵的行数、列数和非零元个数rtripletable;voidcreat(rtripletable&A)/创立稀疏矩阵voidprint(rtripletableA)/输出稀疏矩阵intaddsmatrix(rtripletableM,rtripletableN)/矩阵相加intsubsmatrix(rtripletableM,rtripletableN)/稀疏矩阵相减voidmultsmatrix(rtripletableM,rtripletableN,rtripletable&Q)/稀疏矩阵相乘【调试分析】1、由于开场对顺序存储的知识还不熟识,在三元组的存储和运用会导致算法低效。2、做到存储的时候,开场时不知道如何存储三元组,和不知怎样去运用它的行数,列数,非零元素。3、在使用选择和循环时,有时由于本人的粗心,把循环的条件弄错了。4、做本程序用到了数组的知识,有时一有不懂的东西又只能打开书来看。5、开场时没有把矩阵的加法和减法的情况考虑全面,导致输出的时候会出现简单的错误。【用户手册】1、本程序的运行环境为Windowsme下的MicrosofeVC+6.0,执行文件为:当前位置:文档视界数据构造课程设计-稀疏矩阵运算器数据构造课程设计-稀疏矩阵运算器完好代码如下:#include#include#include#definemaxsize100#definemaxrow100#defineOK1#defineERROR-1typedefstructintrow;/行数intcol;/列数intv;/非零元素值triplenode;typedefstructtriplenodedatamaxsize+1;/非零元三元组introwtabmaxrow+1;/各行第一个非零元的位置表intmu,nu,tu;/矩阵的行数、列数和非零元个数rtripletable;voidcreat(rtripletable&A)/创立稀疏矩阵intk=1,sum=1,loop,p,t;intnummaxrow+1;cout>A.mu;cout>A.nu;cout>A.tu;cout>A.dataloop.row>>A.dataloop.col>>A.dataloop.v;/输入三元组的行数,列数和非零元素值当前位置:文档视界数据构造课程设计-稀疏矩阵运算器数据构造课程设计-稀疏矩阵运算器if(M.datap.v+N.dataq.v!=0)/两个稀疏矩阵相加的结果不为0Q.datak.row=M.datap.row;Q.datak.col=M.datap.col;Q.datak.v=M.datap.v+N.dataq.v;+k;+q;+p;elseif(M.datap.colcoutN.dataq.col)/第一个稀疏矩阵列数大于第二个稀疏矩阵的列Q.datak.row=N.dataq.row;Q.datak.col=N.dataq.col;Q.datak.v=-N.dataq.v;+q;+k;if(M.datap.rowN.dataq.row)/第一个稀疏矩阵行列数大于第二个稀疏矩阵行数Q.datak.row=N.dataq.row;Q.datak.col=N.dataq.col;Q.datak.v=-N.dataq.v;+q;+k;while(p/处理M的每一行for(p=1;pmaxsize)return;Q.dataQ.tu.row=arow;/行数Q.dataQ.tu.col=ccol;/列数Q.dataQ.tu.v=ctempccol;/累加非零元素值coutcout>choice;switch(choice)case'A':creat(A);break;case'B':creat(B);break;case'C':addsmatrix(A,B);break;case'D':subsmatrix(A,B);break;case'E':multsmatrix(A,B,Q);break;case'F':exit(0);cout

    注意事项

    本文(数据构造课程设计-稀疏矩阵运算器.docx)为本站会员(安***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

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

    收起
    展开