給你兩個非空的鍊錶,表示兩個非負的整數。它們每位數字都是按照逆序的方式儲存的,並且每個節點只能儲存一位數字。請你將兩個數相加,並以相同形式返回乙個表示和的鍊錶。你可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。
輸入:l1 =
[2,4,3], l2 =
[5,6,4]
輸出:[7,0,8]
解釋:342 + 465 = 807.
示例2:
輸入:l1 =
[0], l2 =
[0]輸出:[0]
示例3:
輸入:l1 =
[9,9,9,9,9,9,9], l2 =
[9,9,9,9]
輸出:[8,9,9,9,0,0,0,1]
輸入的兩個鍊錶可能節點個數不同,但是我們可以看做是長度相同的兩個鍊錶(短了的部分使用null補充)。
遞迴遍歷兩個鍊錶每個節點構造新的節點,作為上乙個節點的next節點。遞迴結束條件為兩個節點都為空。
注意:當前兩個節點的之和可能大於10,在構造新的節點時應使用和10取餘的結果。進製的數加到下一次遞迴中,如果當前到達遞迴結束條件但是存在進製,那麼需要在新建乙個節點,節點值即為這個進製的值(1)。
public
class 兩數相加
leetcode經典題目 兩數相加(PHP解法)
給出兩個非空的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照逆序的方式儲存的,並且它們的每個節點只能儲存一位數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8 ...
LeetCode 兩數相加
題目來自leetcode 注意幾點 鍊錶對應結點相加時增加前乙個結點的進製,並儲存下乙個結點的進製 兩個鍊錶長度不一致時,要處理較長鍊錶剩餘的高位和進製計算的值 如果最高位計算時還產生進製,則還需要新增乙個額外結點。definition for singly linked list.struct l...
leetcode 兩數相加
給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭.示例 輸入 2 4 3 5 6 4 輸出 7 0 8 原因 342 465 807 definition for singly ...