跳转到内容

十字链表

本页使用了标题或全文手工转换
维基百科,自由的百科全书

这是十字链表当前版本,由InternetArchiveBot留言 | 贡献编辑于2020年10月2日 (五) 17:29 (补救1个来源,并将0个来源标记为失效。) #IABot (v2.0.7)。这个网址是本页该版本的固定链接。

(差异) ←上一修订 | 最后版本 (差异) | 下一修订→ (差异)

十字链表(英語:Orthogonal linked list)是计算机科学中的一种高级数据结构,在Linux内核中应用广泛。具体说,一个二维十字链表是链表的元素同时链接左右水平邻结点与上下垂直邻结点。这一方法可以推广到更高维以存储稀疏矩阵、图等数据集合。[1]

简介[编辑]

典型用于稀疏矩阵存储时,矩阵每个元素为以下五元组:

typedef struct OLNode {    
     int  LineNumber, ColumneNumber;          //行号与列号     
     ElemType value;        //值     
     struct OLNode *right, *down;  //同行、同列下一个元素的指针     
}OLNode, *OList;

分别创建两个指针数组,分别存放每行或每列的第一个结点的地址。

参见[编辑]

参考文献[编辑]

  1. ^ orthogonal list in encyclopedia.com. [2017-04-18]. (原始内容存档于2017-04-19).