以下是一个示例代码,展示了如何按顺序将数组中的所有元素添加到链表中:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def array_to_linked_list(nums):
# 创建一个虚拟头节点
dummy = ListNode()
curr = dummy
for num in nums:
# 创建一个新的节点,并将其连接到当前节点的下一个节点
new_node = ListNode(num)
curr.next = new_node
# 更新当前节点为新节点
curr = curr.next
# 返回链表的头节点
return dummy.next
# 示例用法
nums = [1, 2, 3, 4, 5]
head = array_to_linked_list(nums)
curr = head
while curr:
print(curr.val)
curr = curr.next
在这个示例中,我们首先创建了一个虚拟头节点,在循环中遍历数组并逐个创建新的节点。然后,我们将每个新节点连接到当前节点的下一个节点,并更新当前节点为新节点。最后,返回虚拟头节点的下一个节点作为链表的头节点。
在示例的用法中,我们将数组 [1, 2, 3, 4, 5]
转换为链表,并通过遍历链表来验证转换的结果。