静态链表是由数组来描述链式存储的,其结点也有数据与和指针域,与前面链表的指针域不同的是,这里的指针是结点在数组中的相对地址,也就是数组下标,又称游标,和顺序表一样,静态链表也需要分配一块连续的内存空间。
静态链表结构体
#define Maxsize 50 //静态链表的最大长度
typedef struct{
int data;
int next; //下一个元素的数组下标
}slinklist[Maxsize];
可以看到这里的next是int型也就是下一个元素的数组下标,所以以next==-1为结束的标志,静态链表与动态链表相同,插入删除都只需要修改指针,不需要移动元素。