稀疏矩阵三元组顺序表:数组与列序存储详解

需积分: 9 0 下载量 159 浏览量 更新于2024-08-20 收藏 701KB PPT 举报
本资源主要介绍了稀疏矩阵的三元组顺序表存储表示方法,结合数组和广义表的概念。首先,我们回顾了数组的定义与特点。数组是由一组具有相同类型但下标不同的变量构成的数据结构,其特点是元素类型统一,下标有固定范围且可视为线性表的特殊形式。数组的主要操作包括存取和修改元素值。 在存储多维数组时,由于计算机内存是一维的,我们需要通过某种顺序将多维数组元素排列成一维序列,如行序和列序。行序存储时,数组元素按照行的顺序依次存储,列序存储则是按列的顺序。这种顺序决定了元素在内存中的地址计算规则。 接下来,资源提供了三个课堂练习题目来帮助理解数组的存储结构: 1. 计算一个二维数组A,行下标1到6,列下标0到7,每元素占用6字节的存储空间,其总存储量为6 * 7 * 6 = 252个字节。 2. 对于一个元素长度为3字节的数组A,按行存放时,A[8,5]的起始地址可通过公式计算:(8-1)*3 + (5-1)*6 + SA = 24 + 24 + SA,由于题目没有给出初始地址SA,所以答案取决于SA的具体数值。 3. 数组a[0…5,0…6],以列序为主序存储,基地址为1000,每个元素占5个存储单元,元素a[4][5]的地址计算为1000 + (5*6 + 4*5) * 5。 稀疏矩阵的三元组顺序表存储表示是针对存储效率较低但元素非零较少的情况设计的,它使用结构`Triple`存储每个非零元素的行索引i,列索引j以及对应的值e。`TSMatrix`union类型定义了一个大小为MAXSIZE+1的Triple数组,同时提供mu, nu, tu三个整型成员变量,可能是为了支持不同类型的数据存储或灵活的数据访问方式。 总结来说,这部分内容涵盖了数组的基础概念、存储结构、存储顺序的约定以及如何通过三元组顺序表实现稀疏矩阵的高效存储。理解这些概念对于处理大规模数据的计算问题,尤其是稀疏矩阵运算时至关重要。