題目:
給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。
如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。
您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭
示例:
輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)輸出:7 -> 0 -> 8原因:342 + 465 = 807思路:
建立乙個煉表頭head ,用於表示最終結果鍊錶的頭結點的上一節點
定義乙個 tmp ,用於儲存每次相加的進製
設 v1 與v2分別為l1與l2當前位的值
tmp = v1 + v2 + tmp
結果鍊錶中當前位
vr = tmp%10
進製 tmp = tmp / 10
重複操作
直至計算完畢
public listnode addtwonumbers(listnode l1, listnode l2)
//若h1還有位沒有加完,繼續計算
while (h1!=null)
//若h2還有位沒有加完,繼續計算
while (h2!=null)
//若 還有進製沒有算完,繼續計算
while (tmp!=0)
return head.next;
}
leetCode刷題 2 兩數相加
給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8 原因 342 465 807 複製 題目的前提,將數字使用鏈結來儲存,比如...
Leetcode刷題(2 兩數相加)
給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 2 4 3 5 6 4 輸出 ...
LeetCode刷題 2 兩數相加
題目要求 給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 2 4 3 5 6 ...