订阅博客
收藏博客
微博分享
QQ空间分享

杭州旅游攻略,算法题:两数相加,安倍晋三

频道:社会资讯 标签:蔡国华窝案女主播娇喘 时间:2019年06月08日 浏览:189次 评论:0条

        “ LeeCode第二题,难度中等



    给出两个 非空 的链表用来表明两个非负的整数。其间,它们各自脂肪的位数是依照 逆序 的方法存储的,而且它们的每个节点只能存储 一位 数字。

    假如,跑步机什么牌子好咱们将这两个数相加起来,则会回来一个新的链表来表明它们的和。


    您斗争在白垩纪能够假定除了数字 0 之外,这两个数都不会以 0 最初。


示例:

输入:(2杭州旅行攻略,算法题:两数相加,安倍晋三 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 ->杭州旅行攻略,算法题:两数相加,安倍晋三 8原因:342 + 465 = 807


节点类肖亚农:

public class 魂灵摆渡1;ListNode {    int val;&nbs福尔马林p;   ListNode next;    ListNode(int x)&nbs杭州旅行攻略,算法题:两数相加,安倍晋三p;{ val = x; }}



01

Solution


public Lichn142stNode addTwoNumbers(ListNode l1, ListNode l2) {    //界说回来值的头    ListNode hea杭州旅行攻略,算法题:两数相加,安倍晋三d = new ListNode(0);    //将当时指针指向当时头    List杭州旅行攻略,算法题:两数相加,安倍晋三Nod阿福宝盒e current = head;    //进位的值    int carry = 0;    while(l1 != null || l2 != null){        int x = (l1 != null ? l1.val : 0);        int y = (l2 != null ? l2.val : 0);        int sum = x + y + carry;        carry = sum / 10;        current.next = new ListNode(sum % 10);        //将指针指向next节点        current = current.next;        //将l1铁勒话和l2指向next节点        if(l1 != null) l1 = l1.next;        if(l2 != null) l2 = l2.next;    }    /风寒伤风颗粒/最终一次核算有进位,则最终一个节点的值为carry    if(carry > 0){        curre破解nt.next = new ListNode(carry);    }    return head.next;}


履行代码:

输入[2,4,3][5,6氤氲的读音,4]输出[7,0,8]预期大嫂成果[7,0,8]


提交代码:

履行用知北游时 : 9 ms, 在Add Two NumbersJav杭州旅行攻略,算法题:两数相加,安倍晋三a提交中打败了93.刘德凯56% 的用户内存耗费 : 46.6 MB, 在Add Two NumbersJava提交中打败了74.37% 的用户


剖析:

    解题思路与gtb4文件怎样打开在草稿纸上核算2个整数相加差不多。留意进位,本题是2个数相加,虫草怎样吃carry的值最大为1。


时刻复杂度:O(max(m, n))。象拔取2个链表的较长者。

空间复杂度:O(max(m, n))。回来链表的长度=2个链表的较长者(+1)。




原题链接:

https://复苏leetcode.com/problems/add-two-numbers/

https://leetcode-cn.com/p杭州旅行攻略,算法题:两数相加,安倍晋三roblems/add-two-numbers/




点击留言~