
etc
Pythonclass ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next在初始化方法中,我们可以传入一个值和一个指针来创建一个新的节点。如果没有传入任何参数,则默认节点的值为0,指针为空。创建单链表要创建一个单链表,我们可以按照节点的顺序连接它们。首先,我们需要创建一个头节点,然后依次创建其他节点,并将它们连接到链表中。最后返回头节点即可。
Pythondef createLinkedList(nums): head = ListNode(nums[0]) cur = head for i in range(1, len(nums)): cur.next = ListNode(nums[i]) cur = cur.next return head在上述代码中,我们首先创建了一个头节点,然后使用cur变量来表示当前节点,初始时指向头节点。接下来,我们使用循环遍历nums列表,依次创建节点,并将其连接到链表中。最后,返回头节点即可。遍历单链表遍历单链表是常见的操作,我们可以通过循环遍历链表中的每个节点,并对其进行相应的操作。下面是一个示例代码,用于遍历并打印单链表中的每个节点的值。
Pythondef traverseLinkedList(head): cur = head while cur: print(cur.val) cur = cur.next在上述代码中,我们使用cur变量来表示当前节点,初始时指向头节点。然后,我们使用while循环遍历链表,每次迭代打印当前节点的值,并将cur指向下一个节点。当cur为空时,表示遍历结束。反转单链表反转单链表是一个常见的问题,可以使用迭代或递归的方式来实现。下面是一个示例代码,用于反转一个单链表。
Pythondef reverseLinkedList(head): prev = None cur = head while cur: next_node = cur.next cur.next = prev prev = cur cur = next_node return prev在上述代码中,我们使用prev变量来表示前一个节点,cur变量来表示当前节点,初始时prev为空,cur指向头节点。然后,我们通过迭代的方式遍历链表,每次迭代将当前节点的next指针指向前一个节点,并更新prev和cur的值。当遍历结束时,返回prev节点即可。本文介绍了如何使用Python实现Leetcode中的ListNode数据结构,并提供了创建、遍历和反转单链表的示例代码。通过掌握这些基本操作,读者可以更好地理解和解决与单链表相关的问题。希望本文对读者有所帮助!
Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号