2-3 线性表的链式存储

1. 头结点:在单链表的第一个结点之前人为地附设的一个结点。

2.

 

3.头指针存放头结点的位置

4. 单链表是非随机存取的存储结构。

5. 静态链表表示

#define MAXSIZE 1000      / /链表的最大长度

typedef  struct{

     ElemType data;  

     int cur;

}component,  SLinkList[MAXSIZE];

 

6.循环链表:是一种头尾相接的链表(即:表中最后一个结点的指针域指向头结点,整个链表形成一个环)。

8.优点:从表中任一结点出发均可找到表中其他结点

9.由于循环链表中没有 NULL 指针,故涉及遍历操作时, 其终止条件就不再像非循环链那样判断 p 或 p ->next 是否 为空,而是判断它们是否等于头指针。

10.四种存储方式的比较

1、顺序存储的固有特点:

    逻辑顺序与物理顺序一致,本质上是用数组存储线性表的各个元素(即随机存取);存储密度大,存储空间利用率高。

2、链式存储的固有特点:

    元素之间的关系采用这些元素所在的结点的”指针”信息表示(插、删不需要移动结点)。

3、静态存储的固有特点:

    在程序运行的过程中不用考虑追加内存的分配问题。

4、动态存储的固有特点:

可动态分配内存;有效的利用内存资源,使程序具有可扩展性。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值