零碎的2天了,总算写出来了,完事开头难,开始了就好了,以后多多总结:
1.第一个节点赋值特别困难的话,可以返回list.next
2.简洁,自己体会吧
3.是否有必要初始化下一个节点,并且如何才能初始化的非常简洁
具体代码如下:
public class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
ListNode listNode = new ListNode(0);
ListNode l3 = listNode;
int num=0;
while(l1 != null || l2!=null){
if(l1!=null){
num +=l1.val;
l1=l1.next;
}
if(l2!=null){
num += l2.val;
l2=l2.next;
}
l3.next = new ListNode(num%10);//为当前节点赋值
l3=l3.next;//到当前节点
num /= 10;
if(num==1){//如果超过10
l3.next = new ListNode(1);//初始化下一个节点
}
//否则不初始化
}
return listNode.next;
}
}