原題鏈結
這題思路很簡單,分為三個步驟:
獲取l1和l2的長度,並對短的鍊錶進行補零
兩個對應節點的值相加
注意:在進行兩個對應節點的值相加時,鍊錶末尾相加後,可能會大於10,這個時候需要在新增乙個數
**:
class
solution
//我得到的是null,注意這兩種的區別哦
while
(l1.next!= null)
while
(l2.next!= null)
//怎麼補零呢?
listnode p=l1;
listnode q=l2;
if(count1 > count2)
}else
}//2.兩個對應節點的值相加
listnode dummy =
newlistnode(0
);listnode result = dummy;
就是最終的返回結果
int count =0;
//怎麼處理鍊錶的最後乙個位數呢?l1:1->7 l2:2->4
while
(p1 != null && p2 != null)
else
p1=p1.next;
p2=p2.next;
}//怎麼處理鍊錶的最後乙個位數呢?l1:1->7 l2:2->4,如果count==1,則進一位,多加個節點
if(count==1)
return result.next;
}}
LeetCode2 兩數相加
嗯。今天兩個簡單題,我可能要墮落了 先貼第乙個 給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8原因 342 465 807...
LeetCode 2 兩數相加
題目 給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8 原因 342 465 807 解題 這題就比較簡單了,兩數相加處理好...
LeetCode 2 兩數相加
題目描述 給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。題目思路 先從最低有效位也就是列表 l1 和 l2 的表頭開始相加。由於每位數字都應當處於 0 9 的範圍內,我們計算...