|
|
|
|
|
n维数组是一种"同构"的数据结构,其每个元素类型相同、结构一致。数组是定长线性表在维数上的扩张,即线性表中的元素又是一个线性表。
|
|
|
|
数组结构的特点是:数据元素数目固定;数据元素具有相同的类型;数据元素的下标关系具有上下界的约束且下标有序。
|
|
|
|
|
|
|
|
(2)给定一组下标,修改相应的数据元素中某个数据项的值。
|
|
|
|
|
|
一旦定义了数组,结构中的数据元素个数和元素之间的关系就不再发生变动,因此数组适合于采用顺序存储结构。
|
|
|
|
由于计算机的内存结构是一维线性的,因此存储多维数组时必须按照某种方式进行降维处理,即将数组元素排成一个线性序列,这就产生了次序约定问题。对二维数组有两种存储方式:一种是以列为主序的存储方式;另一种是以行为主序的存储方式。
|
|
|
|
设每个数据元素占用L个单元,m、n为数组的行数和列数,那么以行为主序优先存储的地址计算公式为
|
|
|
|
Loc(aij)=Loc(a11)+((i-1)n+(j-1))L
|
|
|
|
|
|
Loc(aij)=Loc(a11)+((j-1)m+(i-1))L
|
|
|