静态链表
静态链表是用数组描述的链表,这种描述的方法叫游标实现法
线性表的静态链表存储如图:
如上图:数组模拟的静态链表有两个元素,一个保存数据和一个保存游标
这里有几个特殊的地方:
(1)静态链表的头和尾都不保存数据
(2)第一个结点的游标存放数组中第一个没有数据的下标
(3)最后一个元素的游标存放第一个有数据的下标,也就是数组的第二个元素,下标为1
(4)从第一个有数据的元素开始,游标存放的是下一个元素的下标,依次类推,形成链表的形式
(5)最后一个有数据的游标为0
静态链表的数据结构:
/*
*静态链表的定义
*/
#include <stdlib.h>
#include <malloc.h>
#define MAXSIZE 1000
typedef int ElemType;
typedef struct
{
ElemType data;//数据
int cur;//游标
}Componet,StaticList[MAXSIZE];
对静态链表进行初始化相当于初始化数组