Разъяснение по объединению двух связанных списков с фиктивным узлом (проблема с оператором return) - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть этот рабочий код, но я не понимаю оператора возврата. На что head должен указывать? Он имеет -1 в качестве значения и его next будет None. Так мы бы не получили None в качестве возврата? Мне нужно немного разъяснений, пожалуйста.

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
        head=ListNode(-1)
        dummy_head=head
        while l1 is not None and l2 is not None:
            if l1.val<l2.val:
                dummy_head.next=l1
                l1=l1.next
                dummy_head=dummy_head.next

            else:
                dummy_head.next=l2
                l2=l2.next
                dummy_head=dummy_head.next

        if l1!=None:
            dummy_head.next=l1
        if l2!=None:
            dummy_head.next=l2
        return head.next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...