【数据结构】特殊矩阵的压缩

目的: 减少不必要的存储空间

数组存储

一个数组的所有元素在内存中占用一段连续的存储空间。(L为每个数组元素所占的存储单元,int 在32位下是4)
在这里插入图片描述
多维数组映射:
• 按行优先
• 按列优先

特殊矩阵的压缩

特殊矩阵:
• 对称矩阵
• 上(下)三角矩阵
• 对角矩阵

  1. 对称矩阵
    在这里插入图片描述
    规律:ai,j = a j,i
    n*n 矩阵
    压缩:存在一维数组中(也可以存储上三角矩阵)
    第一行: 1个元素 a1,1
    第二行: 2个元素 a2,1 a2,2
    。。。。。
    经过压缩:最后 元素个数为 n(n+1)/2
    三角矩阵
    上三角:
    第一行 : n个元素
    第二行:n-1个元素

    第 j 行: n-j+1个元素
    进过压缩:最后元素个数为 n(n+1)/2 +1 (+1是因为要存储下三角的常量,存在最后)
    三对角矩阵:
    在这里插入图片描述
    定义: 元素ai,j = 0 ( |i-j|>1)
    特点:元素都集中在三条对角线上
    第一行 :两个元素
    第二行: 三个元素
    。。。。
    最后一行: 两个元素
    稀疏矩阵:
    用三元组存储不为0的位置(i,j)和数
    在这里插入图片描述

存储位置的计算:

元素和下标对应关系不用死记,知道排列方式,会推就行。
注意:数组下标从0开始,看清题目给的是第k个元素还是数组下标为k 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wvdon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值