Python 实现无头节点的单链表
无头节点的单链表是指链表中没有头结点,只有首节点。下面是一个简单的实现示例:
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def is_empty(self):
return self.head is None
def add_first(self, data):
new_node = Node(data)
new_node.next = self.head
self.head = new_node
def add_last(self, data):
new_node = Node(data)
if self.is_empty():
self.head = new_node
else:
current = self.head
while current.next is not None:
current = current.next
current.next = new_node
def remove(self, data):
if self.is_empty():
return
if self.head.data == data:
self.head = self.head.next
return
current = self.head.next
prev = self.head
while current is not None:
if current.data == data:
prev.next = current.next
return
prev = current
current = current.next
def print_list(self):
current = self.head
while current is not None:
print(current.data, end=' ')
current = current.next
在这个实现中,我们使用 Node 类来表示链表中的每个节点。LinkedList 类包含了一些基本的链表操作,如添加节点、删除节点和打印链表。注意,当链表为空时,self.head 为 None。当要添加第一个节点时,需要将 self.head 设置为新节点。
原文地址: https://www.cveoy.top/t/topic/otqb 著作权归作者所有。请勿转载和采集!