写一个具有增删查改的单链表
时间: 2024-06-01 13:10:05 浏览: 16
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:
current = self.head
while current.next is not None:
current = current.next
current.next = new_node
# 删除节点
def remove_node(self, data):
if self.head is None:
return
if self.head.data == data:
self.head = self.head.next
return
current = self.head
while current.next is not None:
if current.next.data == data:
current.next = current.next.next
return
current = current.next
# 查找节点
def search_node(self, data):
current = self.head
while current is not None:
if current.data == data:
return True
current = current.next
return False
# 修改节点
def modify_node(self, old_data, new_data):
current = self.head
while current is not None:
if current.data == old_data:
current.data = new_data
return
current = current.next
# 打印链表
def print_list(self):
current = self.head
while current is not None:
print(current.data, end=' ')
current = current.next
print()