线性结构作为最常用的数据结构,其特点
是数据元素之间存在一对一的线性关系。
线性结构有两种不同的存储结构,即顺序
存储结构(数组)和链式存储结构(链表)。顺
序存储的线性表称为顺序表,顺序表中的
存储元素是连续的链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息。
线性结构常见的有:数组、队列,链表和
栈。
1、稀疏数组
。因为该二维数组的很多值是默认值0因此
记录了很多没有意义的数据->稀疏数组。
。当一个数组中大部分元素为0,或者为同
一个值的数组时,可以使用稀疏数组来保
存该数组。
稀疏数组的处理方法是:
记录数组一共有几行几列,有多少个不同的值。
把具有不同值的元素的行列及值记录在一
个小规模的数组中,从而缩小程序的规模。
二维数组转稀疏数组的思路
。遍历原始的二维数组,得到有效数据的个数sum。
。根据sum就可以创建稀疏数组sparseArrint[sum+1][3]。
。将二维数组的有效数据数据存入到稀疏数组。
稀疏数组转原始的二维数组的思路
。先读取稀疏数组的第一行,根据第一行的数据,创建原始的二维数组,比如上面的chessArr2=int[11][11]。
。在读取稀疏数组后几行的数据,并赋给原始的二维数组即可。