文本内容:
实验二利用三元组表实现矩阵相加
一、预备知识
1.稀疏矩阵的三元组表压缩存储结构2,稀疏矩阵的三元组表表示方法下的相加算法
二、实验目的
2.掌握稀疏矩阵的三元组表存储结构的实现
3.实现稀疏矩阵的三元组表表示下的相加算法
三、实验内容
1.编写程序,实现利用三元组表进行两个稀疏矩阵相加的算法要求
(1)随机产生两个可相加的稀疏矩阵(二维);
(2)将产生的稀疏矩阵用两个三元组表的顺序存储结构存储;
(3)将两稀疏矩阵相加的结果存储在第三个三元组表中
2.沿用实验一编写的操作菜单进行上述的操作
四、实验说明
1.三元组表的类型定义ttdefine MAXSIZE1000//非零元素个数的最大值typedef struct{int row,co1;//非零元素的行下标和列下标ElemType e;//非零元素的值}Triple;typedef struct{Triple data[MAXSIZE+l];//非零元素的三元组表,data
[0]未用int mu,nu,tu;//矩阵的行数、列数和非零元素个数}TSMatrix;
五、注意问题1•首先应输入矩阵的行数和列数,并判别给出的两个矩阵的行、列数对于所要求作的运算是否相匹配可设矩阵的行数和列数均不超过
202.程序可以对三元组的输入顺序加以限制,例如,按行优先,以便提高计算效率
3.在用三元组表示稀疏矩阵时•,相加或相减所得结果矩阵应该另生成,相加结果矩阵也可用二维数组存放4,三元组表是线性表的一种应用,通过它可以更好地理解线性表的存储结构同时矩阵又是图的重要的存储方式,所以这个实验对更好地掌握线性表对将来对图的理解都有极大的帮助。