题目 题解 class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { int carry = 0; ListNode res = new ListNode(-1); ListNode p = res; while (l1 != null && l2 != null) { int sum = l1.val + l2.val + carry; carry = sum / 10; p.next = new ListNode(sum % 10); p = p.next; l1 = l1.next; l2 = l2.next; } if (l1 != null) { p.next = l1; } else if (l2 != null) { p.next = l2; } while (carry != 0 && p.next != null) { int sum = p.next.val + carry; carry = sum / 10; p.next.val = sum % 10; p = p.next; } if (p.next == null && carry != 0) { p.next = new ListNode(carry); } return res.next; } }