链表(Linked List)
链表通过指针链接的方式使各节点在逻辑上是一个线性的序列(节点在内存中是随机分布)。
一个节点由两部分构成:
- 数据域:用于存储实际的数据。
- 指针域:用于存储指向下一个节点内存地址的引用。
- 链表可利用内存中不连续的碎片空间,占用的内存是动态变化的(插入或删除时)。
- 插入和删除的性能较高
O(1)。
不支持随机访问,查询性能较低 O(n) 。
链表类型
链表有多种不同的类型,常见的有单向链表、双向链表、循环链表。
单向链表
每个节点只包含指向下一个节点的指针,链表的最后一个节点的指针通常指向一个空值。
双向链表
每个节点包含两个指针,一个指向前一个节点,另一个指向后一个节点。
循环链表结构
循环链表的最后一个节点指向头结点。
最后更新于