在Python中定义一个链表通常需要创建两个类:一个节点类和一个链表类。节点类用于表示链表中的每个元素,而链表类用于管理这些节点,并提供添加、删除、查找和打印链表等操作。下面是一个简单的链表定义示例:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def add_node(self, data):
new_node = Node(data)
if self.head is None:
self.head = new_node
else:
curr_node = self.head
while curr_node.next:
curr_node = curr_node.next
curr_node.next = new_node
def print_list(self):
curr_node = self.head
while curr_node:
print(curr_node.data)
curr_node = curr_node.next
创建链表
linked_list = LinkedList()
添加节点
linked_list.add_node(1)
linked_list.add_node(2)
linked_list.add_node(3)
打印链表
linked_list.print_list()
这个示例中,`Node` 类有两个属性:`data` 用于存储节点的值,`next` 用于指向下一个节点。`LinkedList` 类有一个属性 `head`,指向链表的第一个节点。`add_node` 方法用于向链表中添加新节点,`print_list` 方法用于打印链表中的所有元素。
如果你需要更复杂的链表操作,比如在链表头部或尾部添加元素、删除元素、查找元素等,你可以扩展 `LinkedList` 类以包含这些方法。