Skip to Content

链表(Linked List)

链表通过指针链接的方式使各节点在逻辑上是一个线性的序列(节点在内存中是随机分布)。

一个节点由两部分构成

  • 数据域:用于存储实际的数据。
  • 指针域:用于存储指向下一个节点内存地址的引用。

链表结构

  • 链表可利用内存中不连续的碎片空间,占用的内存是动态变化的(插入或删除时)。
  • 插入和删除的性能较高 O(1)

不支持随机访问,查询性能较低 O(n)


链表类型

链表有多种不同的类型,常见的有单向链表、双向链表、循环链表。

单向链表

每个节点只包含指向下一个节点的指针,链表的最后一个节点的指针通常指向一个空值。

单向链表结构

双向链表

每个节点包含两个指针,一个指向前一个节点,另一个指向后一个节点。

双向链表结构

循环链表结构

循环链表的最后一个节点指向头结点。

单向循环链表结构

最后更新于