1、定义
数组是一个二元组(idx,value)的集合,用于存放一些同类型元素。其中,value被idx准确表示。
我们可以举一个例子。在初中高中的时候我们都学过一维坐标系、二维坐标系、三维坐标系。
如下:
现在假如我们要去描述红色五角星所在的位置。
在一维坐标系中,我们可以用2来描述五角星的位置。
在二维坐标系中,我们可以用两个数(4,4)来描述五角星的位置。(这个描述可以先x轴后y轴,也可以先y轴后x轴)
在三位坐标系中,我们可以用三个数(1,2,3)来描述五角星的位置。(这里是按照x、y、z轴的顺序,当然可也以按照其他的描述顺序例如y、x、z等等)
我们不难发现,红色五角星的位置被一些数准确描述了出来。这也对应了数组的定义:数组是一个二元组(idx,value)的集合,用于存放一些同类型元素。其中,value被idx准确表示。
2、数组的分类
按照维度,可以分为一维、二维和多维数组。
这里我们要明确,几维数组是指元素被描述的维度。例如七维数组就是每一个元素都有4个关系进行描述。抽象成坐标系来说,就是用四个坐标轴上的位置来描述红色五角星的位置。
(一般考试考到二维数组就基本可以)
3、数组的特点
1、数组中各元素全是同一个类型
2、d(d>1)维数组的非边界元素具有d个前驱元素和d个后继元素。
(因为每个元素有d个描述的轴,而d又在中间,延每个轴向前向后都会找到一个前驱和后继元素)
3、数组的维度确定之后,数据元素个数与元素之间的关系不再发生改变,特别适合顺序存储。同时,数组的主要操作是存取元素值两个操作,并没有插入和删除操作,因此用顺序存储结构更适合。
4、每个有意义的下标都存在一个与其相对应的数组元素。就是每个轴上的坐标都对应着元素。
4、抽线数据类型