数据结构——特殊矩阵的压缩存储及其推导

对称矩阵

特点:a[i][j]=a[j][i]

存储方法:只存储上(下)三角的数据元素,共占用n(n+1)/2个元素空间

行序为主序放在一维数组s[n(n+1)/2]中

下标k:前面有几个元素就在什么位置(注意:我们这里下标都是从0开始!!!!!)

      
 

当i<j的时候,有a[i][j]=a[j][i],所以可以通过i>=j时的式子推出

1.1以下三角存储(主对角线下方):

1.2以上三角(主对角线)

 

如果是关于副对角线对称的k值应该是怎样的呢?其实还是求a[i][j]前面元素的个数,留到三角矩阵来说,因为基本是没有什么区别的。

三角矩阵

特点:对角线以下或以上的数据元素(不包括对角线)全部为常数c

存储方法:重复元素c共享一个存储单元,共占n(n+1)/2+1个元素。

空间:sa[n(n+1)/2+1]


 

带状矩阵(蛇形矩阵)

1.压缩成m*w矩阵(a[i][j]->b[t][s])

2.压缩为一维数组

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值