数组也是一种线性存储结构,用来存储逻辑关系为 "一对一" 的数据。
和其他线性存储结构相比,数组最大的不同是:它存储的数据可以包含多种“一对一”的逻辑关系。
图中,{a1, a2, a3, a4}、{b1, b2, b3, b4}、{c1, c2, c3, c4}、{d1, d2, d3, d4} 中各自包含的元素具有“一对一”的逻辑关系,同时 a、b、c、d 这 4 个序列也具有“一对一”的逻辑关系。
数据结构中的数组
对于数组存储结构,我们可以这样理解它:数组是对线性表的扩展,是一种“特殊”的线性存储结构,用来存储具有多种“一对一”逻辑关系的数据。
实际场景中,存储具有 N 种“一对一”逻辑关系的数据,通常会建立 N 维数组。
上图:一维数组和其它线性存储结构很类似,用来存储只有一种“一对一”逻辑关系的数据。
下图:二维数组用来存储包含两种“一对一”逻辑关系的数据。二维数组可以看作是存储一维数组的一维数组。
总结:n 维数组用来存储包含 n 种“一对一”逻辑关系的数据,可以看作是存储 n-1 维数组的一维数组。
特性
数组存储结构还具有一些其它的特性,包括:
- 无论数组的维度是多少,数组中的数据类型都必须一致;
- 数组一旦建立,它的维度将不再改变;
- 数组存储结构不会对内部的元素做插入和删除操作,常见的操作有 4 种,分别是初始化数组、销毁数组、取数组中的元素和修改数组中的元素。