首页 / 软件开发 / C++ / 基于C++的稀疏矩阵乘法运算器的实现
基于C++的稀疏矩阵乘法运算器的实现2011-04-14 comprg.com.cn 周敏1. 问题描述稀疏矩阵是指那些多数元素为零的矩阵。利用“稀疏”特 点进行存储和计算可以大大节省存储空间,提高计算效率。实现一个能进行稀疏矩阵乘法运 算的运算器。以“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵,实现两个 矩阵相乘的运算。稀疏矩阵采用十字链表表示,而运算结果的矩阵则以通常的阵列形式列出2 设计2.1 用十字链表存储稀疏矩阵为了能有效存储稀疏矩阵的元素 , 本文采用十字链表对数据进行存储, 所设计的十字链表C++语言描述如 下:Typedef struct OLNode{
Int i , j ;
ElemType e;
Struct OLNode * right, * down;
}OLNode; *OLink;
Typedef struct{
OLink * rhead, * chead;
Int mu,nu,tu;
}CrossList;
2.2 稀疏矩阵相乘主 要算法设计稀疏矩阵乘法运算器的设计主要设计到稀疏矩阵的创建和相乘运算, 下面 给出这两个过程的C++语言描述为: