- 数组是内存中的一片连续的内存空间
- 可以根据索引下标获取某一个元素
- 新增删除元素时会移动元素位置保证连续性,效率低下
二维数组
简单来说就是盛放数组的数据,换言之,二维数据的一个元素就是一个一维数组
-
稀疏数组(sparseArray):
当一个二维数组中大部分元素为0. 或者是一个固定值时,可以将二维数据转化为稀疏数组例
# [4][10]的二维数组 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, 0, 0, 0, 0, 0, 0, 24, 0, 0 0, 0, 0, 0, 12, 0, 0, 0, 0, 0 0, 0, 0, 0, 0, 0, 13, 0, 0, 0 # 转化为稀疏数组 4 10 3 # 原数组是4 行,10 列数组, 其中不同的值有3个 1 7 24 # 第一个不同的值所在的位置和值, 第1行(从0行开始),第7列(0 列开始),值为24 2 4 12 # 第二个不同的值所在的位置和值, 第2行,第4列,值为12 3 6 13 # 第三个不同的值所在的位置和值, 第3行,第6列,值为13
转化为稀疏数组规则:
- 稀疏数组为固定三列的二维数组
- 稀疏数据的行数 = 原二维数据不同的值个数 +1
- 稀疏数组的第零行 的三个元素代表 原数组的行数,列数,不同值的个数
- 从第一行开始,每一行记录的是每个不同数据的所在行,列,值
网友评论