稀疏数组的基本介绍
- 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。
- 稀疏数组的处理方法:
- 记录数组 一共有几行几列,有多少个不同的值
- 把具有不同值的袁元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模。
应用实例
- 使用稀疏数组,来保留类似前面的二维数组(棋盘、地图等等)
- 将稀疏数组存盘,并且可以从新恢复原来的二维数组。
二维数组转稀疏数组的思路
- 遍历原来的二维数组,得到有效的数据的个数sum
- 根据sum可以创建,稀疏数组sparArr int[sum+1][3]
- 将二维数组的有效数据存入到稀疏数组中
将稀疏数组转成原始的二维数组的思路
- 先读取稀疏数组的第一行,创建原始的二维数组。
- 再读取稀疏数组的后几行数据,并赋值给原始的二维数组。