Leetcode 解题 Add Two Numbers Python

原题:

You are given two linked lists representing two non-negative numbers.

The digits are stored in reverse order and each of their nodes contain a single digit

Add the two numbers and return it as a linked list

Input: (2->4->3) + (5->6->4)

Output: 7->0->8

代码如下,递归调用add函数即可:

class Solution:

    # @param {ListNode} l1

    # @param{ListNode}l2

    # return {ListNode}



    def addTwoNumbers(self, l1, l2):

        return self.add(l1, l2)

    def add(self, l1, l2, s=0):

        l = ListNode(s)

        if l1:

            l.val += l1.val

            l1 = l1.next

        if l2:

            l.val += l2.val

            l2 = l2.next

        s= l.val/10

        l.val = l.val % 10

        if l1 or l2 or s: l.next = self.add(l1, l2, s)

        return l

 

你可能感兴趣的:(LeetCode)