Add Two Numbers

零碎的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;
    }
}

  

原文地址:https://www.cnblogs.com/blogofcookie/p/5599116.html