在 Python 中,没有像 C 语言那样的结构体
在 Python 中,没有像 C 语言那样的结构体(struct),但可以通过类(class)来实现类似的功能。链表节点可以用一个简单的类来表示,其中包含数据字段和指向下一个节点的指针。
Python 链表节点实现
以下是一个用 Python 类实现链表节点的示例:
python
class Node:
def __init__(self, data):
self.data = data # 数据字段
self.next = None # 指向下一个节点的指针,初始化为None
创建链表
通过创建多个 Node 实例并链接它们的 next 指针,可以构建一个链表。例如,构建一个包含三个节点的链表:1 -> 2 -> 3 -> None。
python
# 创建链表: 1 -> 2 -> > None
head = Node(1) # 第一个节点
head.next = Node(2) # 第二个节点
head.next.next = Node(3) # 第三个节点
打印链表
定义一个函数 print_list,遍历链表并打印每个节点的数据。
python
def print_list(head):
current = head # 从链表头开始
while current is not None:
print(current.data, end=" -> ") # 打印当前节点的数据
current = current.next # 移动到下一个节点
print("None") # 链表末尾
aspcms.cn完整代码示例
以下是完整的代码,包括节点创建、链表构建和打印:
python
class Node:
def __init__(self, data):
self.data = data
self.next = None
def print_list(head):
current = head
while current is not None:
print(current.data, end=" -> ")
current = current.next
print("None")
# 创建链表: 1 -> 2 -> 3 -> None
head = Node(1)
head.next = Node(2)
head.next.next = Node(3)
# 打印链表
print_list(head)
输出
运行上述代码后,输出如下:
1 -> 2 -> 3 -> None
总结
Python 中通过类实现链表节点,类似于 C 的结构体。
链表的构建和遍历逻辑与 C 类似,但语法更简洁。
Python 的动态类型和垃圾回收机制简化了内存管理(无需手动释放内存)。