5.1数组的定义
定义:
由一组类型相同的数据元素构成的有序集合,每个数据元素称为一个数据元素(简称元素),每个元素受n(n>=1)个线性关系的约束,每个元素在n个线性关系中的序号i1、i2…in称为元素的下标,并称为n元数组
二维数组是数据元素为线性表的线性表
数组没有插入和删除操作:因为数组一旦被定义,它的维数和维界就不再改变
数组的基本操作:
1.存取:给定一组下标,读出对应的数组元素
2.修改:给定一组下标,存储或修改与其相对应的数组元素
存取和修改操作本质上只对应一种操作:寻址
存储方式:没有插入删除操作,故不用预留空间,不适合采用顺序存储
5.2数组的顺序表示和实现----- 一维数组
设一维数组的下标范围为闭区间[l,h],每个数组元素占用c个存储单元,则其任一元素ai的存储地址为: Loc(ai)=Loc(aL)+(i-L)*c
由于内存空间是一维的,将二维数组表示为一维结构的方法有:
1.按航有线:先行后列,先存储行号较小的元素,行号相同者先存储列号较小的元素
2.按列优先:先列后行,先存储列号较小的元素