数据结构
课 程 设 计
题 目 | 稀疏矩阵的转置 |
专 业 | 网络工程 |
班 级 | |
姓 名 | |
指导教师 | |
2013 | 年 | 6 | 月 | 27 | 日 |
课程设计任务书
学生姓名: 专业班级:
指导教师: 工作单位:
题 目: 稀疏矩阵的转置
初始条件:
(1)稀疏矩阵采用三元组表示,输入一个稀疏矩阵A。
(2)求出A的转置矩阵D,输出D。
测试数据:
要求完成的主要任务:
课程设计报告按学校规定格式用A4纸打印,并应包含如下内容:
1. 问题描述
简述题目要解决的问题是什么。
2. 设计
存储结构设计、主要算法设计(用C语言或用框图描述)、测试用例设计。
3. 调试报告
调试过程中遇到的问题是如何解决的;对设计和编码的讨论和分析。
4. 程序运行结果(包括对算法改进的设想)
5. 经验与体会
6. 参考文献
说明:
1. 设计报告、程序不得相互抄袭和拷贝;若有雷同,则所有雷同者成绩均为0分。
时间安排:
1、第17周完成。
2、2011年6月28号提交打印版课程设计,源程序刻录光盘。
指导教师签名:
年 月 数据结构与算法论文日
目录
1.问题分析与任务定义 1
2.结构设计 1
3.算法思想 1
4.模块划分 2
5.算法实现 2
5.1对矩阵进行定义 2
5.2创建稀疏矩阵 2
5.3求矩阵的快速转置 3
6.系统运行结果 5
7.经验与体会 5
8.参考文献 5
稀疏矩阵的转置
1.问题分析与任务定义
稀疏矩阵是指那些多数元素为零的矩阵。利用“稀疏”特点进行存储和计算可以大大节省存储空间,提高计算效率。实现一个能进行稀疏矩阵基本运算的运算器。以“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵,实现稀疏矩阵的转置。求出稀疏矩阵A的转置矩阵D,输
出D。
1.1稀疏矩阵采用三元组表示,输入一个稀疏矩阵A。
1.2求出A的转置矩阵D,输出D。
测试数据:
2.结构设计
2.1.以“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵。
2.2.稀疏矩阵的输入形式采用三元组表示,而运算结果的矩阵则通常以阵列形式列出。
2.3.首先应输入矩阵的行数和列数,并判别给出的两个矩阵的行、列数对于所要求作的运算是否相匹配。可设矩阵的行数和列数均不超过20。
2.4.程序可以对三元组的输入顺序加以限制,例如,按行优先。研究教材的算法,以便提高计算效率。
2.5.在用三元组表示稀疏矩阵时,相加或相减所得结果矩阵应该另生成,乘积矩阵也可用二维数组存放
3.算法思想
3.1.主函数设置循环和选择语句进行运算循环和选择,进行稀疏矩阵的转置和是否继续运算2个分支开关进行选择。
3.2.设置函数分别实现稀疏矩阵的输入,输出。
3.3.在数组结构体中设置存放每行第一个非零元在其数组存储结构单元的位置的存储单元,若该行无非零元,则存为0
4.模块划分
4.1typedef struct存放各行第一个非零元在存储数组中的位置,若该行无非零元,则其rpos[]
值为零
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论