今天研究了一下十字链表,当稀疏矩阵的内部元素经常变化时,用三元顺序表操作起来比较麻烦,故用链表来实现对稀疏矩阵的存储,由于矩阵具有二维特性,单链表显然不适用,采用十字链表来实现对稀疏矩阵的存储。
十字链表有三种结点,1.总表头结点 2.行列表头结点 3.非零元素结点。下面一一介绍
1.总表头结点
共有5个子域
Row |
Col |
Next |
|
Down |
Right |
Row总行数
Col 总列数
Next 指向第一个行列表头结点
down和right两个指针域空置
2.行列表头结点
行列表头结点的结构与总表头结点相同,m行n列的矩阵需设置S(max(m,n))个行列表头结点
0 |
0</ |