def reverseLink(head: ListNode) -> ListNode: if not head or not head.next: return head node = reverseLink(head.next) head.next.next = head head.next = None return node
def reverseList(self, head: ListNode) -> ListNode: if not head or not head.next: return head node = self.reverseList(head.next) head.next.next = head head.next = None return node
def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode: if not l1 and not l2: return None if not l2: l2 = ListNode(0) if not l1: l1 = ListNode(0) l1.val = l1.val + l2.val if l1.val > 9: l1.val = l1.val - 10 if l1.next: l1.next.val += 1 else: l1.next = ListNode(1) l1.next = self.addTwoNumbers(l1.next, l2.next) return l1