淘先锋技术网

首页 1 2 3 4 5 6 7

Python是一种广泛使用的编程语言,拥有丰富的库支持。在本文中,我们将介绍Python中的线性链表。

class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if self.head is None:
self.head = new_node
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = new_node
def print_list(self):
curr_node = self.head
while curr_node:
print(curr_node.data)
curr_node = curr_node.next

以上代码定义了一个Node类和LinkedList类。Node类表示链表中的一个节点,包括一个数据和指向下一个节点的指针。LinkedList类则是一个包含Node节点的链表,其中有一个头节点head指向链表的起始位置。

在append()函数中,我们创建了一个新的Node来存储传入的数据,并将其添加到链表的末尾。如果链表为空,则将该节点设置为头节点。

print_list()函数,遍历整个链表并打印每个节点的数据。

有了上面的代码,我们可以创建一个新的链表并添加节点:

llist = LinkedList()
llist.append("hello")
llist.append("world")
llist.print_list()
# Output: hello world

在代码输出中,我们可以看到添加的节点以正确的顺序打印出来了。

线性链表是Python程序员需要了解的基本数据结构之一。它不仅被广泛使用,而且对于许多其他算法和数据结构的实现都是至关重要的。