第一章数据结构与算法线性表的顺序存储结构下标为i+1的元素的存储位置与下标为的元素的存储例如,长度为n的线性表(a,,,位置之间,满足下列关系a;,,a,)的顺序存储如图1-6所示。ADR(a+) =ADR(a) +K数欺元系在线线性表首地址即第一个元素地址:ADR(a1)性表中的序号内你软态,存储地址空间分配"H占K个字节ADR(α,)1ADR(u,)+K20占K个字节线性表第1个元素地址"-ADR(a)=ADR(a) + (i-1 ) KADR(o,H(i-1)Ka占K个字节""如:顺序表(14、23、25、78、15、68、27)的点K个字节aADRIa,H(r-1)K存储,每个元素占2个存储单元,第1个元素地址200则第3个元素25的地址就是ADR(a)+(3-1)线性表的顺序存储结构示意图*2=204
线性表的顺序存储结构 第一章 数据结构与算法 下标为i +1的元素的存储位置与下标为i的元素的存储 位置之间,满足下列关系: ADR(ai+ 1 ) =ADR(ai ) +K 线性表首地址即第一个元素地址:ADR(a1) 线性表第i个元素地址: ADR(ai ) =ADR(a1 ) +(i-1)K 如:顺序表(14、23、25、78、15、68、27)的 存储,每个元素占2个存储单元,第1个元素地址200 则第3个元素25的地址就是ADR(a1)+(3-1) *2=204
第一章数据结构与算法对于线性表的顺序存储结构,可以进行各种处理下面主要讨论线性表在顺序存储结构下的插入与删除运算
对于线性表的顺序存储结构,可以 进行各种处理。 下面主要讨论线性表在顺序存储结 构下的插入与删除运算。 第一章 数据结构与算法
第一章数据结构与算法例(a)是为一个长度为5的线性表顺序存储在长度为★经多次插入后可能存储空间已满若再8的存储空间中插入则发生“上溢”错误★若插入是在线性表未尾则直接在未尾1111111122新增一个元素即可无需移动元素223232333+333563333442545656★若在第一个位置插入则需要移动所有555252586元素;65151686677>86★一般情况下,在第i(1<=i<=n)个元888素之前插入一个新元素,则原来第i个元素(b)插入33后的线性表(a)长度为5的线性表(c)插入51后的线性表之后(包含元素)的所有元素都要移动线性表在顺序存储结构下的插入缺点:时间均花在节点移动上,移动的次数与线性表的长度和新插入的位置有关系;
例(a)是为一个长度为5的线性表顺序存储在长度为 8的存储空间中。 ★经多次插入后可能存储空间已满若再 插入则发生“上溢”错误; ★若插入是在线性表末尾则直接在末尾 新增一个元素即可无需移动元素; ★若在第一个位置插入则需要移动所有 元素; 第一章 数据结构与算法 ★一般情况下,在第i(1<=i<=n)个元 素之前插入一个新元素,则原来第i个元素 之后(包含i元素)的所有元素都要移动; 缺点:时间均花在节点移动上,移动的次数与线性表的 长度和新插入的位置有关系;
第一章数据结构与算法例(a)是一个长度为7的线性表顺序存储在长度为8的存储空间中。现在要求册删除表中的第2个元素(即册删除元素23)。★若删除的是线性表未尾元素则直接册11A1.11111除无需移动元素222235656m33255625444258686★若删除的是线性表第一个元素,则需555528634要移动表中所有元素6663452★一般情况下,若删除第i(1<=i<=n)77527个元素,则原来第1个元素之后的所有元素888都要移动;(a)长度为7的线性表(b)删除23后的线性表(c)删除34后的线性表线性表在顺序存储结构下的删除缺点:时间均花在节点移动上,移动的次数与线性表的长度和册删除元素位置有关系;
例(a)是一个长度为7的线性表顺序存储在长度为8的存储空 间中。现在要求删除表中的第2个元素(即删除元素23)。 第一章 数据结构与算法 ★若删除的是线性表末尾元素则直接删 除无需移动元素; ★若删除的是线性表第一个元素,则需 要移动表中所有元素; ★一般情况下,若删除第i(1<=i<=n) 个元素,则原来第i个元素之后的所有元素 都要移动; 缺点:时间均花在节点移动上,移动的次数与线性表的 长度和删除元素位置有关系;
第一章数据结构与算法例题:1、在线性表的顺序存储结构中,其存储空间连续,以下说法正确的是((A)各个元素所占的字节数相同,元素的存储顺序与逻辑顺序一致(B)各入元素所占的字节数相同,但其元素的存储顺序可以与逻辑顺序不一致(C)各个元素所占的字节数不同,但元素的存储顺序与逻辑顺序一致(D)各个元素所占的字节数不同,且其元索的存储顺序可以与逻辑顺序不一致
例题:1、在线性表的顺序存储结构中,其存储空间连续,以下说法正确的是( ) 第一章 数据结构与算法 (A)各个元素所占的字节数相同, 元素的存储顺序与逻辑顺序一致 (B)各个元素所占的字节数相同, 但其元素的存储顺序可以与逻辑顺序不一致 (C)各个元素所占的字节数不同, 但元素的存储顺序与逻辑顺序一致 (D)各个元素所占的字节数不同, 且其元索的存储顺序可以与逻辑顺序不一致