【数据结构】链表中不起眼的静态链表

一、回顾链表

【数据结构】链表中不起眼的静态链表

二、静态链表

1、静态链表中的数据存储在堆上
2、把静态链表存储的堆内存看成一个数组,数组中的每个元素都由数据域和游标域组成,并且每个元素都含有下标
3、静态链表会给出提前预留的结点,这样会导致一部分结点已使用,一部分结点未使用,所以将第一个数组和最后一个数组牺牲掉,即不存放数据
4、可将第一个数组作为未使用部分的头结点;最后一个数组作为已使用部分的头结点
5、-1为一部分链表的结尾,和其他链表的指针域的NULL作用相同
【数据结构】链表中不起眼的静态链表

三、操作思想

1、插入操作

(1)把未使用部分的的头结点在未使用链表中删除
(2)把数据放在该结点的数据域中
(3)把该结点插入到已使用部分的链表中
(4)改变游标域
【数据结构】链表中不起眼的静态链表

2、删除操作

(1)把结点从已使用部分的链表中删除
(2)把该结点插入到未使用的部分
(3)改变游标