牛客网每日一练

# class ListNode:
#         self.val = x
#         self.next = None

#
# 
# @param l1 ListNode类 
# @param l2 ListNode类 
# @return ListNode类
#
class Solution:
    def mergeTwoLists(self , l1 , l2 ):
        if not l1:
            return l2
        if not l2:
            return l1
        if l1.val < l2.val:
            l1.next = self.mergeTwoLists(l1.next, l2)
            return l1
        else: 
            l2.next = self.mergeTwoLists(l1, l2.next)
            return l2
        
        # write code here

将两个有序的链表合并为一个新链表,要求新的链表是通过拼接两个链表的节点来生成的,且合并后新链表依然有序。

此题没什么难度,以前总是喜欢用迭代,现在尝试简化代码用的递归。

原文地址:https://www.cnblogs.com/nenu/p/14610059.html