压缩存储即为多个相同的非零元素只分配一个存储空间对零元素不分配空间
所谓特殊矩阵(Special Matrices)是指非零元素或零元素的分布有一定规律的矩阵
几种特殊矩阵的压缩存储
对称矩阵
在一个n阶方阵A中若元素满足下述性质
aij=aji≤ij≤n
则称A为对称矩阵如图所示
存储元素为{}共个
令I=max(ij)J=min(ij)则k和ij的对应关系为
k=I×(I+)/+J≤k<n(n+)/
aij的地址计算公式
LOC(aij)=LOC(sa[])+[I×(I+)/+J]×d
三角矩阵
以主对角线划分三角矩阵有上三角和下三角两种上三角矩阵的下三角(不包括主角线)中的元素均为常数c下三角矩阵正好相反它的主对角线上方均为常数c在多数情况下三角矩阵的常数c为零
上三角矩阵中sa[k]和aij的对应关系是
对角矩阵
对角矩阵中所有的非零元素集中在以主对角线为中心的带状区域中即除了主对角线和主对角线相邻两侧的若干条对角线上的元素之外其余元素皆为零如图所示
对角矩阵可按行优先顺序或对角线的顺序将其压缩存储到一个向量中并且也能找到每个非零元素和向量下标的对应关系