My Little World

静态链表

用数组描述的链表叫做静态链表
这种描述方法叫做游标实现法
staticlinklist1
Staticlinklist是一个容量为maxsize大的数组,数组每一项是一个结构struct,
这个结构包含两项,数据data和游标cur
整个数组的第一项(下标为0)和最后一项(下标为maxsize-1)的数据部分不存放数据
把未使用的数组元素(数据部分为空称为备用链表
约定:
——第一项的游标指向数组中除收尾两项外的项中,第一个数据部分为空的项,即首项游标为该项的下标/备用链表第一个结点的下标;
——尾项游标指向第一个有数据的元素 相当于头结点作用
——其他元素游标等于其指向的元素位于数组中的下标
——数据元素的最后一项的游标等于首项下标0,即指向备用链表开始结点

初始化静态链表相当于初始化数组

1
2
3
4
5
6
7
8
Status InitList(StatixLinkList space)
{
int i;
for(i =0;i<MAXSIZE-1;i++){
space[MAXSIZE-1].cur = 0;
return OK;
}
}

链表插入,删除,求长度 代码链接