【每日一题 | 数据结构】压缩矩阵存储算法

题型方法讲解

首先明确,压缩矩阵存储算法是408考试中的重点、难点、高频考点,甚至曾经达成了连续五年考到程度,让同学们感到恐惧。很多同学都会把这类题型当成一个记公式的题,其实不然,这个视频将会告诉你如何用推导的方式稳定高效解决这类题,告别记忆负担!

什么是压缩矩阵算法?本质上为了节约空间把二维数组压缩存储在一维数组里面的算法就叫压缩矩阵算法,而它又分为行优先和列优先两种方式,顾名思义行优先存储就是先行后列的思想:先存储行号比较小的元素,行号相等时先存储列号小的元素。

int array[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

我们看这个数组,所谓行优先就是从第一行开始存,如果学过线性代数可以把它看成一个三行三列的矩阵,依次存储行向量。

那么好,有了基本的概念,我们来讲解这种题型的通法,我把它称为“画矩阵找关系法”。

注意,请严格执行以下给出的步骤来做题,摒弃死记公式的方法!!

  1. 画出矩阵(一般题目是二维数组)的基本形状,观察矩阵的地址下标0还是1开始。
  2. 根据行优先或列优先原则(根据题目)列出基本信息,包括给出的数组元素,它是第几个元素,它将要被存储在哪里(下面通过题目详细解释)
  3. 研究除了最后一行(列)一共有多少个元素要存储
  4. 加上最后一行(列)的元素,找到个数与存储地址对应的关系

题目

在这里插入图片描述

讲解笔记

在这里插入图片描述
在这里插入图片描述
视频链接:【每日一题 | 数据结构】压缩矩阵存储算法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不会喷火的小火龙

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

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

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

打赏作者

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

抵扣说明:

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

余额充值