数据结构【数组和特殊矩阵】

数组的定义

1:数组:由n(n>=1)个【不为空】相同类型的数据元素构成的有限序列,每个元素在n个线性关系中的序号称为该元素的下标,下标的取值范围称为数组的维界。

2:数组与线性表的关系
答:数组是线性表的推广,一维数组可以看作一个线性表,数组一旦被定义,其维数和维界就不再改变,因此除结构的初始化和销毁外,数组只会有存取元素和修改元素的操作。

3:一维数组
请添加图片描述

4:二维数组请添加图片描述
按照行和列存放后有一个好处:可以实现随机存取。
计算b[I][j]的存储地址。【分行与列】

5:特殊矩阵的压缩
请添加图片描述
考点:如何映射在一维数组的坐标上
以a32为例,第一行有1个元素,2行2两个,而所求元素在第三行第二个,故推导至aij得
1⃣️:1+2+……+(n-1)I行之前有多少个元素
2⃣️:i行第j个,在1⃣️的基础上加j
实现了对一维数组的映射
请添加图片描述

注意:因为数组是从0开始的,故最后一位元素的下标要-1,如果题目中给定下标从1开始,那么末位就无需再-1了。

若要求对应的上三角矩阵的元素,根据对称矩阵的特性即可求得。【如下】
请添加图片描述

【若按列分对称矩阵】
请添加图片描述

6:三角矩阵的压缩存储
请添加图片描述
多了一个c,相比对称矩阵的压缩
因为上三角矩阵部分都是常数c
请添加图片描述

7:三对角矩阵的压缩存储
请添加图片描述
除去第一行与最后一行,每行都是存储3个元素,因此是3n-2

实现映射:
请添加图片描述
1:前i-1行共:除去第一行为(3-1)其余皆3
则为3(i-1)-1。

实现反映射:
请添加图片描述

8:稀疏矩阵
用顺序存储——三元组<行,列,值>
用该方法寻找时只能一个个遍历,失去了随机存取的特性
方法2:十字链表法,链式存储。

9:一些考题
请添加图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值