Leetcode 2. 两数之加(带图)

Posted 自行车在路上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 2. 两数之加(带图)相关的知识,希望对你有一定的参考价值。

写下leetCode,每天两道,带上图,题目来源leetCode

题目-2两数相加(来源:leetCode)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

代码

public static ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        ListNode dummyHead = new ListNode(0);
        ListNode cur = dummyHead;
        int carry = 0;

        while(l1 != null || l2 != null)
        {
            int sum = carry;
            if(l1 != null)
            {
                sum += l1.val;
                l1 = l1.next;
            }
            if(l2 != null)
            {
                sum += l2.val;
                l2 = l2.next;
            }
            // 创建新节点
            carry = sum / 10;
            cur.next = new ListNode(sum % 10);
            cur = cur.next;

        }
        if (carry > 0) {
            cur.next = new ListNode(carry);
        }
        return dummyHead.next;
    }

时间复杂度:O(\\max(m,n)),其中 m 和 n 分别为两个链表的长度。我们要遍历两个链表的全部位置,而处理每个位置只需要 O(1) 的时间。

空间复杂度:O(1)。注意返回值不计入空间复杂度。

demo下载路径

码云
在这里插入图片描述

参考

出处

https://leetcode-cn.com/problems/add-two-numbers/

参考

https://github.com/MisterBooo/LeetCodeAnimation/tree/master/0002-Add-Two-Numbers

以上是关于Leetcode 2. 两数之加(带图)的主要内容,如果未能解决你的问题,请参考以下文章

[leetcode数组系列]2三数之和

已知两数之和,求两数乘积最大

寻找两数之差

上期回顾(Hash算法):两数之和

[Leetcode]658.Find K Closest Elements

Leetcode 3.无重复字符的最长子串(带图)