数据结构论坛

首页 » 分类 » 问答 » 带你认识数据结构静态链表
TUhjnbcbe - 2024/9/8 19:20:00
北京最好白癜风专治医院 http://pf.39.net/bdfyy/xwdt/
#结构#在本篇文章中,作者将和大家一起来了解数据结构中的一种特殊的链表——静态链表。

静态链表是一种较为特殊的链表,这种链表没有指针,所以它可以用于一些没有指针类型的高级语言结构中。

那么静态链表与普通的单链表有什么区别呢?

1,首先,静态链表在分配内存空间时会申请一整片连续空间;

2,其次,静态链表是没有指针的,它使用游标(下一个结点的数组下标)来充当指针。

我们把在初始化时把a[0]的next指向-1,那么我们的可以通过观察游标是否为-1来判断是否以及到达了表尾。同时,我们在初始化时将空闲结点的next设置为-5,这样只要计算机发现一个结点的next值是-5,就可以清楚它是一个空闲结点了。

接下来,我们看看如何用c++代码来初始化一个静态链表:

#includestdio.h

#includestdlib.h

#includemalloc.h

#defineMaxSize10

typedefstruct{

  intdata;

  intnext;

}SlinkList[MaxSize];

voidtesSlinkList(){

SlinkLista;

}

通过以上的代码我们会发现,静态链表的初始化其实就是申请了一个结构体类型的数组,在其中存储了data与next。

本篇文章到此就结束了,欢迎大家

1
查看完整版本: 带你认识数据结构静态链表