self.next = None如何得到l1的下一个值呢?
How does self.next = None get the next value of l1?
我正在研究 Leetcode 上的一个问题(问题 21)。它要求我合并两个排序的 linked 列表并将其 return 作为一个新列表,并且它给出了这样的预键入代码。
# Definition for singly-linked list.
# class ListNode(object):
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution(object):
def mergeTwoLists(self, l1, l2):
"""
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
"""
在正式解决合并问题之前,我做了一些测试。我输入 l1 如下:
l1 = [1,2,3,4,5]
我把代码改成:
class Solution(object):
def mergeTwoLists(self, l1, l2):
print(l1.val)
print(l1.next.val)
输出显示:
1
2
让我感到困惑的部分是函数 self.next 如何获取我输入的 ListNode 的下一个值。在我的理解中,self.next设置为None,所以l1.next应该等于None,None.val应该出错。有人可以帮我解决这个问题吗?
这里有两张显示代码、输入和输出的图片。
enter image description here
此外,这里是 link 我遇到问题的地方。
https://leetcode.com/problems/merge-two-sorted-lists/#/description
那个None
是默认值next
在一个新的ListNode
。其他 ListNode
可以将其他值分配给 next
。正确构建 linked 列表 ListNodes
涉及为每个节点的 link 参数分配对下一个节点的引用:
l1 = ListNode(1)
l2 = ListNode(2)
l3 = ListNode(3)
l4 = ListNode(4)
l5 = ListNode(5)
l1.next = l2
l2.next = l3
l3.next = l4
l4.next = l5
我正在研究 Leetcode 上的一个问题(问题 21)。它要求我合并两个排序的 linked 列表并将其 return 作为一个新列表,并且它给出了这样的预键入代码。
# Definition for singly-linked list.
# class ListNode(object):
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution(object):
def mergeTwoLists(self, l1, l2):
"""
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
"""
在正式解决合并问题之前,我做了一些测试。我输入 l1 如下:
l1 = [1,2,3,4,5]
我把代码改成:
class Solution(object):
def mergeTwoLists(self, l1, l2):
print(l1.val)
print(l1.next.val)
输出显示:
1
2
让我感到困惑的部分是函数 self.next 如何获取我输入的 ListNode 的下一个值。在我的理解中,self.next设置为None,所以l1.next应该等于None,None.val应该出错。有人可以帮我解决这个问题吗?
这里有两张显示代码、输入和输出的图片。
enter image description here
此外,这里是 link 我遇到问题的地方。 https://leetcode.com/problems/merge-two-sorted-lists/#/description
那个None
是默认值next
在一个新的ListNode
。其他 ListNode
可以将其他值分配给 next
。正确构建 linked 列表 ListNodes
涉及为每个节点的 link 参数分配对下一个节点的引用:
l1 = ListNode(1)
l2 = ListNode(2)
l3 = ListNode(3)
l4 = ListNode(4)
l5 = ListNode(5)
l1.next = l2
l2.next = l3
l3.next = l4
l4.next = l5