[leetcode]Merge Two Sorted Lists @ Python

3010 ワード

原題住所:https://oj.leetcode.com/problems/merge-two-sorted-lists/
标题:Merge two sorted linked lists and return it as a new list.The new list should be made by splicing together the nodes of the first two lists.
問題を解く考え方:並べられたチェーンテーブルを2つマージします.
コード:
# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    # @param two ListNodes
    # @return a ListNode
    def mergeTwoLists(self, l1, l2):
        if l1 == None:
            return l2
        if l2 == None:
            return l1
        dummy = ListNode(0)
        tmp = dummy
        while l1 and l2:
            if l1.val <= l2.val:
                tmp.next = l1
                l1 = l1.next
                tmp = tmp.next
            else:
                tmp.next = l2
                l2 = l2.next
                tmp = tmp.next
        if l2 == None:
            tmp.next = l1
        else:
            tmp.next = l2
        return dummy.next