2.3-7 静态链表
1、什么是静态链表
- 单链表各个结点在内存中星罗棋布并且每个结点由数据元素和指向下一个结点的指针(地址)构成
- 静态链表:分配一整片连续的内存空间,各个结点集中安置
- 静态链表中每个结点存放数据元素和下一个结点的数组下标
- 头号指针(下标为0)不存放实际的数据元素
- 如图所示,头结点的下一个结点的下标为2,下标为2的结点的下一个节点的下标为1,再下一个结点的下标为1…
- 故灰色部分的游标充当“指针”,只不过指针指明了具体地址,但游标只是指明了下标
- 游标为-1表示已经到达表尾,-1也就相当于NULL
2、如何代表定义一个静态链表
课本上的定义:
- 等价于,先定义一个结构体,这个结构体叫做struct Node,最后一行再用typedef把struct Node改名为SLinkList[MaxSize]
- 即如果用SLinkList定义一个变量a的话,就相当于声明了一个数组,并且这个元素数组有MaxSize个
3、简述基本操作的实现
故在初始化的时候,也要把空闲的结点标记出来以便使用
4、知识回顾与重要考点
(模糊字段:数据元素数量固定不变的场景)