顺序表
线性表的顺序存储结构:线性表
特点:线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素,
作用:线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系。
顺序存储的实现:一维数组存储顺序表中的数据。
设顺序表的每个元素占用 c 个存储单元,则第 i 个元素的存储地址为:
LOC ( a i ) = LOC ( a 1 ) + ( i - 1 ) × c
容易看出,顺序表中数据元素的存储地址时其序号的线性函数,只要确定了存储顺序表的其实地址,计算任意一个元素的存储地址的时间是先等的,具有这一特点的存储结构成为随机存取结构。
顺序表的实现:
T Get ( int i ); // 按位查找,取线性表的第 i 个元素
int Locate ( T x ) ; // 按值查找,求线性表中值为 x 的元素序号
void Insert ( int i, T x ) ; // 在线性表中第 i 个位置插入值为 x 的元素