知识大全 多维数组-矩阵的压缩存储- 稀疏矩阵(二)
Posted 知
篇首语:会挽雕弓如满月,西北望,射天狼。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 多维数组-矩阵的压缩存储- 稀疏矩阵(二)相关的知识,希望对你有一定的参考价值。
带行表的三元组表
为了方便某些矩阵运算 在按行优先存储的三元组表中 加入一个行表来记录稀疏矩阵中每行的非零元素在三元组表中的起始位
置 这就是带行表的三元组表
( )类型描述
#define MaxRow l //在三元组表定义前加入此最大行定义
typedef struct
TriTupleNode data[MaxSize];
int RowTab[MaxRow];//行表 应保证m≤MaxRow
int m n t;
RTriTupleTable;
( )带行表的三元组表的操作
① 对于任给行号i( ≤i≤m ) 能迅速地确定该行的第一个非零元在三元组表中的存储位置为RowTab[i]
② RowTab[i]( ≤i≤m )表示第i行之前的所有行的非零元数
③ 第i行上的非零元数目为RowTab[i+ ] RowTab[i]( ≤i≤m )
④ 最后一行(即第m l行)的非零元数目为t RowTab[m ](t为矩阵的非零元总数)
注意
若在行表中令RowTab[m]=t(要求MaxRow>m)会更方便 些 且t可省略
带行表的三元组表可改进矩阵的转置算法 具体【参阅其它参考书】
稀疏矩阵压缩存储方式分析
( ) 三元组表和带行表的三元组表的特点
相应的算法描述较为简单 但这类顺序存储方式对于非零元的位置或个数经常发生变化的矩阵运算就显得不太适合
【例】执行将矩阵B相加到矩阵A上的运算时 某位置上的结果可能会由非零元变为零元 但也可能由零元变为非零元 这就会
引起在A的三元组表中进行删除和插人操作 从而导致大量结点的移动 对此类运算采用链式存储结构为宜
( )稀疏矩阵的链式结构
cha138/Article/program/sjjg/201311/23896相关参考
三角矩阵 ()三角矩阵的划分 以主对角线划分三角矩阵有上三角矩阵和下三角矩阵两种 ①上三角矩阵 如下图(a)所示它的下三角(不包括主角线)中的元素均为常数c ②下三角矩阵 与上三角矩阵
矩阵是科学与工程计算问题中常用的数学对象之一 矩阵的存储 矩阵的二维数组描述 矩阵用二维数组描述时存储的密度为可以对其元素进行随机存取各种矩阵运算也非常简单 矩阵的压缩存储 矩阵中非零元
特殊矩阵 所谓特殊矩阵是指非零元素或零元素的分布有一定规律的矩阵常见的有对称矩阵三角矩阵和对角矩阵等 对称矩阵 ()对称矩阵 在一个n阶方阵A中若元素满足下述性质 aij=aji≤ij≤
知识大全 数据结构考研分类复习真题 第五章 数组和广义表[24]
已知A为稀疏矩阵试从空间和时间角度比较采用两种不同的存储结构(二维数组和三元组表)完成求运算的优缺点【西安电子科技大学二(分)】 特殊矩阵和稀疏矩阵哪一种压缩存储后失去随机存取的功能?为什么?【
压缩存储即为多个相同的非零元素只分配一个存储空间对零元素不分配空间 所谓特殊矩阵(SpecialMatrices)是指非零元素或零元素的分布有一定规律的矩阵 几种特殊矩阵的
稀疏矩阵 设矩阵Amn中有s个非零元素若s远远小于矩阵元素的总数(即s<<m×n)则称A为稀疏矩阵稀疏矩阵的压缩存储 为了节省存储单元可只存储非零元素由于非零元素的分布一般是没有规律的
前面我们学习的线性表栈队列和串都是线性结构本章起学习的是非线性结构它们的逻辑特征是一个数据元素可能有多个直接前趋和多个直接后继 本章重点是熟悉多维数组的存储方式矩阵的压缩存储方式广义表的定义及其
知识大全 数据结构考研分类复习真题 第五章 数组和广义表[12]
所谓稀疏矩阵指的是_______【厦门大学一(%/分)】 对矩阵压缩是为了_______【北京理工大学二(分)】 上三角矩阵压缩的下标对应关系为_______【福州大学二(分)】【南京大学】
知识大全 数据结构考研分类复习真题 第五章 数组和广义表[31]
设对角线矩阵A=(行列下标ij满足≤ij≤) ()若将矩阵A压缩存储到数组S中 试求出A中已存储之元素的行列下标(ij)与S中元素的下标K之间的关系 ()若将A视为稀疏距阵时请画出其行逻辑链
矩阵是科学与工程计算问题中常用的数学对象之一矩阵的存储矩阵的二维数组描述 矩阵用二维数组描述时存储的密度为可以对其元素进行随机存取各种矩阵运算也非常简单cha138/Article/p