LeetCode 445. 兩數相加 II
阿新 • • 發佈:2020-07-12
給你兩個 非空 連結串列來代表兩個非負整數。數字最高位位於連結串列開始位置。它們的每個節點只儲存一位數字。將這兩數相加會返回一個新的連結串列。
你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。
進階:
如果輸入連結串列不能修改該如何處理?換句話說,你不能對列表中的節點進行翻轉。
示例:
輸入:(7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)
輸出:7 -> 8 -> 0 -> 7
# Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode: def int2linkList(num): if num == 0: return ListNode(0) head = None while num > 0: cur = ListNode(num%10) cur.next = head head = cur num = num // 10 return head def linkList2int(node): num = 0 while node is not None: num = node.val + num * 10 node = node.next return num num1 = linkList2int(l1) num2 = linkList2int(l2) num = num1 + num2 return int2linkList(num)