C语言里面的链表是什么

Python014

C语言里面的链表是什么,第1张

C语言里面的链表是一种数据结构

是一种线形的存储结构

链表和数组一样,也是将一组同类型的数据组织在一起的一种数据结构

不同的是

数组采用的是顺序存储,依靠数组的首地址和元素的相对地址(下标)来实现访问。

优点是访问方便快捷,而缺点是数组是静态的,不利于实现元素的动态增减。

而链表采用的是离散存储,依靠节点间的指向下一个节点的指针来实现访问。

其优缺点和数组相反

简单说来,就是通过指针指向,把两个结构体连接起来。比如定义下面这个结构体

struct node

{

int data

struct node *next

}

可以看到结构体里面定义了一个自身类型的指针,通过让指针指向另外一个结构体,我们就能通过结构体里面的next变量访问下个结构体里面的内容,而通过下一个结构体,同样可以通过下一个结构体的next指向,找到下一个这种类型的结构体,这样就形成了所谓的链表。