两数相加
解题思路:
主要是要进位以及最后在判断是不是要比原来的长度多一位。
代码:
/* Definition for singly-linked list.
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 result=new ListNode(0);
ListNode aa=result;
int b=0;
while(l1!=null||l2!=null)
{
b=(l1==null?0:l1.val)+(l2==null?0:l2.val)+b;
aa.next=new ListNode(b%10);
aa=aa.next;
b=b/10;
l1=(l1==null?null:l1.next);
l2=(l2==null?null:l2.next);
}
if(b!=0)
aa.next=new ListNode(b%10);
return result.next;
}
}