Leetcode--2. 两数相加
給出兩個?非空 的鏈表用來表示兩個非負的整數。其中,它們各自的位數是按照?逆序?的方式存儲的,并且它們的每個節點只能存儲?一位?數字。
如果,我們將這兩個數相加起來,則會返回一個新的鏈表來表示它們的和。
您可以假設除了數字 0 之外,這兩個數都不會以 0?開頭。
示例:
輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
輸出:7 -> 0 -> 8
原因:342 + 465 = 807
提交的代碼:
/**
?*?Definition?for?singly-linked?list.
?*?public?class?ListNode?{
?*?????int?val;
?*?????ListNode?next;
?*?????ListNode(int?x)?{?val?=?x;?}
?*?}
?*/
class?Solution?{
????public?ListNode?addTwoNumbers(ListNode?l1,?ListNode?l2)?{
?????????ListNode?result?=?new??ListNode?(0);
?????????ListNode?x?=?result;
????????ListNode?p?=?l1;
????????int?t=0;
????????while(l1!=null||l2!=null)
????????{
????????????x.next?=?new?ListNode(0);
????????????x?=?x.next;
?????????????int?a?=?(l1?!=?null)???l1.val?:?0;
?????????????int?b?=?(l2?!=?null)???l2.val?:?0;
????????????x.val?=?a+b+t;
????????????
????????????if(x.val>=10)
????????????{
?????????????????t?=?x.val/10;
????????????????x.val?=?x.val%10;
????????????}
????????????else
????????????{
????????????????t?=?0;
????????????}
???????if?(l1?!=?null)?l1?=?l1.next;
????????if?(l2?!=?null)?l2?=?l2.next;
????}
????if?(t?>?0)?{
????????x.next?=?new?ListNode(t);????
????}
????????return?result.next;
????}
}
總結
以上是生活随笔為你收集整理的Leetcode--2. 两数相加的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java——String类的方法
- 下一篇: 牛客网--19校招--俄罗斯方块