一、实验目的、意义
()理解稀疏矩阵的三元组存储结构。
()理解用它们表示时创建与转置的算法。
()根据具体问题的需要,能够设计出相关算法。
二、实验内容及要求
说明 1:学生在上机实验时,需要自己设计出所涉及到的函数,同时设计多组输
入数据并编写主程序分别调用这些函数,调试程序并对相应的输出作出分析;修
改输入数据,预期输出并验证输出的结果,加深对有关算法的理解。
具体要求:
()稀疏矩阵三元组顺序表示的基本操作的实现。(参见教材 页)
()完成矩阵转置(算法 )和快速转置(算法 )
三、实验所涉及的知识点
1.假设以顺序存储结构来表示三元组表,则可得稀疏矩阵的一种压缩存储方式—
—三元组顺序表。Data 域表示非零元的三元组是以行序为主序顺序排列的。
2.一个稀疏矩阵的转置矩阵仍然是稀疏矩阵。
3.所谓的稀疏矩阵,从直观上讲,是指矩阵中大多数元素为零的矩阵。一般地,
当非零元素个数只占矩阵元素总数的 或低于这个百分数时,我们称
这样的矩阵为稀疏矩阵。
四、实验记录
建立顺序存储稀疏矩阵的三元组顺序表。用二重循环输入矩阵的每个元素,
并进行判断,若不为零,则将其行、列下标及其值存入到一维数组中对应的元
素中。 对三元组顺序表存储的矩阵 A 进行转置生成 B,由于 A 的列就是 B 的
行,所以可按照 A 的列转置,按顺序找到 A 的每一列中所有非零元素,将行、
列下标调换后存储于 B 中。
五、实验结果及分析