标签:amp class null res car bsp ext pre color
public class ListNode { public int val; public ListNode next; public ListNode(int x) { val = x; } } public class Solution { public ListNode AddTwoNumbers(ListNode l1, ListNode l2) { ListNode lnResult = new ListNode(0); ListNode currentNode = lnResult; ListNode pre = null; int carry = 0; while (l1 != null && l2 != null) { currentNode.val = (l1.val + l2.val + carry) % 10; carry = (l1.val + l2.val + carry) / 10; pre = currentNode; currentNode = new ListNode(0); pre.next = currentNode; l1 = l1.next; l2 = l2.next; } currentNode = AddWithCarry(l1, l2, carry); pre.next = currentNode; return lnResult; } public ListNode AddWithCarry(ListNode l1, ListNode l2, int carry) { ListNode cur = null; if (l1 == null && l2 == null) { if (carry != 0) { cur = new ListNode(0); cur.val = carry; return cur; } return null; } if (l1 == null) { return AddWithCarry(l2, l1, carry); } ListNode result = new ListNode(0); cur = result; ListNode pre = null; while (l1 != null) { cur.val = (l1.val + carry) % 10; carry = (l1.val + carry) / 10; pre = cur; cur = new ListNode(carry); pre.next = cur; l1 = l1.next; } if (pre.next.val == 0) { pre.next = null; } return result; } }
标签:amp class null res car bsp ext pre color
原文地址:http://www.cnblogs.com/pengdotnet/p/Add-Two-Numbers.html