原文:利用十字链表压缩稀疏矩阵(c++)-- 数据结构

题目: 稀疏矩阵 分 如果一个矩阵中, 元素占据了矩阵的大部分,那么这个矩阵称为 稀疏矩阵 。对于稀疏矩阵,传统的二维数组存储方式,会使用大量的内存来存储 ,从而浪费大量内存。为此,可以用三元组的方式来存放一个稀疏矩阵。 对于一个给定的稀疏矩阵,设第r行 第c列值为v,且v不等于 ,则这个值可以表示为 lt r,v,c gt 。这个表示方法就称为三元组。那么,对于一个包含N个非零元素的稀疏矩阵,就 ...

2019-04-11 01:31 0 805 推荐指数:

查看详情

数据结构27:矩阵加法(基于十字链表

矩阵之间能够进行加法运算的前提条件是:各矩阵的行数和列数必须相等。 在行数和列数都相等的情况下,矩阵相加的结果就是矩阵中对应位置的值相加所组成的矩阵,例如: 图1 矩阵相加 十字链表法 之前所介绍的都是采用顺序存储结构存储三元组,在类似于矩阵的加法 ...

Tue May 15 18:46:00 CST 2018 0 1575
稀疏矩阵十字链表存储

稀疏矩阵压缩存储有几种方式,如:三元组顺序表、行逻辑链接的顺序表和十字链表。 使用链表存储的好处是:便于矩阵中元素的插入和删除。 例如:“将矩阵B加到矩阵A上”,那么矩阵A存储的元素就会有变动。比如会增加一些非零元,或者删除一些元素(因为bij+aij=0)。 下图是矩阵M和M的十字链表 ...

Mon Oct 22 19:32:00 CST 2012 1 3443
【算法与数据结构】图 -- 十字链表

图的【十字链表】表示法是一种链式存储结构,可以看成是【邻接表】和【逆邻接表】的组合 本文中用到的有向图 相关数据结构 从顶点向量中查找该顶点在图中的位置(下标) 有向图的创建 ...

Tue Jun 03 02:51:00 CST 2014 0 9742
数据结构24:矩阵压缩存储(十字链表、三元组顺序表、行逻辑链接的顺序表)

如果矩阵中有很多数值相同的数据元素,在存储时,可以考虑对其进行适当的压缩存储。 有必要压缩存储的矩阵大致分为两大类: 矩阵中含有大量的相同数值,称为特殊矩阵(例如对称矩阵和上下三角矩阵)。 矩阵中只有极少量的元素是非 0 元素,称为稀疏矩阵。 两类矩阵压缩存储 ...

Mon May 14 21:45:00 CST 2018 0 2008
采用十字链表存储的稀疏矩阵

Description 当矩阵的非零元个数和位置在操作过程中变化较大时,就不宜采用顺序存储的结构来表示三元组的线性表了。因此,在这种情况下,采用链式存储结构表示三元组更为恰当。十字链表就是能够实现这样功能的一种数据结构。 在十字链表中,每个非零元 ...

Mon Oct 14 09:22:00 CST 2019 0 362
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM