两个数字相加 || DSA || JavaScript ||作者:穆尼塞卡·乌达瓦拉帕蒂

两个数字相加 || dsa || javascript ||作者:穆尼塞卡·乌达瓦拉帕蒂

给你两个非空链表,代表两个非负整数。这些数字以相反的顺序存储,并且每个节点都包含一个数字。将两个数字相加并以链表形式返回总和。

您可以假设这两个数字不包含任何前导零,除了数字 0 本身。

example 1:
input: l1 = [2,4,3], l2 = [5,6,4]
output: [7,0,8]
explanation: 342 + 465 = 807.

example 2:
input: l1 = [0], l2 = [0]
output: [0]

example 3:
input: l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]
output: [8,9,9,9,0,0,0,1]

限制:

每个链表中的节点数量在 [1, 100] 范围内。
0 保证列表代表一个没有前导零的数字。

var addTwoNumbers = function(l1, l2) {
    var List = new ListNode(0);
    var head = List;
    var sum = 0;
    var carry = 0;
    while(l1!==null||l2!==null||sum>0){
        if(l1!==null){
            sum = sum + l1.val;
            l1 = l1.next;
        }
        if(l2!==null){
            sum = sum + l2.val;
            l2 = l2.next;
        }
        if(sum>=10){
            carry = 1;
            sum = sum - 10;
        }
        head.next = new ListNode(sum);
        head = head.next;
        sum = carry;
        carry = 0;

    }
    return List.next;
};

以上就是两个数字相加 || DSA || JavaScript ||作者:穆尼塞卡·乌达瓦拉帕蒂的详细内容,更多请关注其它相关文章!