解题思路
初始化一个「空链表」,每次循环,向该链表末尾添加节点(保存当前个位数)
参考代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode dummy = new ListNode(0); ListNode cur = dummy; int carry = 0; while(l1 != null || l2 != null || carry != 0) { int val1 = (l1 == null) ? 0 : l1.val; int val2 = (l2 == null) ? 0 : l2.val; int sum = val1 + val2 + carry; carry = sum / 10; cur.next = new ListNode(sum % 10); cur = cur.next; if(l1 != null) { l1 = l1.next; } if(l2 != null) { l2 = l2.next; } } return dummy.next; } }
|