链表
链表是一种基本数据结构,它表示一个元素序列。每个元素,称为节点,包含:
- 数据(值):存储在节点中的信息。
- 引用(指针):指向序列中下一个节点的链接。
第一个节点称为头节点,最后一个节点是尾节点,它指向 None,表示列表的结束。
Python 中的节点结构
以下是一个单向链表的简单节点类示例:
class ListNode:
"""单向链表的节点类。"""
def __init__(self, val: int):
self.val: int = val # 存储在节点中的数据
self.next: 'ListNode' = None # 指向下一个节点的引用
创建链表
要构建一个链表,需要实例化节点并使用它们的 next 引用将它们链接起来:
# 创建带有值的节点
n0 = ListNode(1)
n1 = ListNode(3)
n2 = ListNode(2)
n3 = ListNode(5)
n4 = ListNode(4)
# 链接节点:1 -> 3 -> 2 -> 5 -> 4
n0.next = n1
n1.next = n2
n2.next = n3
n3.next = n4
# 设置链表的头节点
head = n0
链表的常见操作
时间复杂度比较
| 操作 | 数组 |
|---|