题目大意
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
解题思路
题目里面预定义的数据结构之后两个链表,这里要增加第三个吗?
递归解法
- 先看看A、B两个链表当前是否为空,找边界条件,一个为空的话则直接返回另一个
- 再比较A和B当前结点data值大小,
如果A的当前数据小于B当前数据,否则A==A—>next
# Definition for singly-linked list.# class ListNode:# def __init__(self, val=0, next=None):# self.val = val# self.next = nextclass Solution:def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:if list1==None:return list2elif list2==None:return list1elif list1.val<list2.val:list1.next=self.mergeTwoLists(list1.next,list2)return list1else:list2.next=self.mergeTwoLists(list1,list2.next)return list2
问题
python中的none和null ? 没有NULL,只有NONE
- 递归调用函数加self。
- https://www.jianshu.com/p/814d65a9c404
