私はLeetcodeの問題の1つ(問題21)に取り組んでいました。 2つのソートされたリンクリストをマージして新しいリストとして返すように要求し、このような型付きのコードを与えます。どのようにself.next = Noneはl1の次の値を取得しますか?
# 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は正しくなくてはなりません。誰かが私にこれを手伝ってもらえますか?
ここには、コード、入力、および出力を示す2つの画像があります。
また、ここで私は私の問題を取得するリンクです。 None
が新しいListNode
にnext
のデフォルト値であることを https://leetcode.com/problems/merge-two-sorted-lists/#/description
はStackOverflowのへようこそ。ヘルプドキュメントの投稿ガイドラインを読み、それに従ってください。 [最小、完全で検証可能な例](http://stackoverflow.com/help/mcve)がここに適用されます。 MCVEコードを投稿して問題を正確に記述するまでは、効果的にお手伝いすることはできません。 投稿したコードをテキストファイルに貼り付け、説明した問題を再現できるはずです。 – Prune
私はあなたが本当にそのような定期的なリストをあなたの関数に渡し、あなたが引用した出力を得たと懐疑的です。 '([1、2、3、4、5]).val'はAttributeErrorを生成します。 – Alex