链表题

作者: 木有鱼丸啦 | 来源:发表于2019-07-21 23:17 被阅读0次

/**给定两个 非空 链表来表示两个非负整数。位数按照 逆序 方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。

你可以假设除了数字 0 之外,这两个数字都不会以零开头。

示例:

输入: (2 -> 4 -> 3) + (5 -> 6 -> 4)

输出: 7 -> 0 -> 8

原因: 342 + 465 = 807

* Add Two Numbers

* 两数相加

*/

public class ListNode {

    public int val;

    public ListNode next;

    public ListNode(int i) {

        this.val = i;

    }

    public int val() {

        return val;

    }

}

public ListNode addTwoNumbers(ListNode l1, ListNode l2) {

    ListNode dummyHead = new ListNode(0);

    ListNode p = l1, q = l2, curr = dummyHead;

    int carry = 0;

    while (p != null || q != null) {

        int x = (p != null) ? p.val : 0;

        int y = (q != null) ? q.val : 0;

        int sum = carry + x + y;

        carry = sum / 10;

        curr.next = new ListNode(sum % 10);

        curr = curr.next;

        if (p != null) p = p.next;

        if (q != null) q = q.next;

    }

    if (carry > 0) {

        curr.next = new ListNode(carry);

    }

    return dummyHead.next;

}

相关文章

  • 链表专题 简单题

    leetcode链表题,简单题也是很重要的,复杂链表题也就是简单链表题的组合。简单题:237: 这道题思路有点不一...

  • 第二章 数据结构模板

    单链表 —— 模板题 AcWing 826. 单链表 双链表 —— 模板题 AcWing 827. 双链表 栈 —...

  • Tourist with Data Structure Seco

    链表 读题要仔细,只看题干,容易死的很惨。 设计链表 环形链表 一般环形链表使用快慢指针方式去做,快慢指针算法。参...

  • 814. Binary Tree Pruning, 二叉树剪枝

    非典型链表题 把这一题放链表类,是因为能得到联系和启发;

  • 链表题

    /**给定两个 非空 链表来表示两个非负整数。位数按照 逆序 方式存储,它们的每个节点只存储单个数字。将两数相加返...

  • 算法 - 链表实现(OC) 及简单的链表算法

    链表实现 打印链表 链表反转 (使用递归法) 两个有序链表合并为一个有序链表 力扣题[https://leetco...

  • 合并K个排序链表

    合并K个排序链表 题目描述 基本思路 这道题属于双链表合并的进阶。理解这道题首先需要了解有序双链表合并的解法。 已...

  • 25.K 个一组翻转链表

    自己解法 这个题是最近做过最难的一道链表题,链表题最关键的就是前置节点、后置节点的维护,这题真的被绕晕了,自己憋了...

  • Leetcode JS单链表实现

    刷题时遇到关于单链表的题,不知道单链表是怎么生成的,可以参照如下代码 输出结果:

  • 希望变得熟练,然后游刃有余

    链表的算法题还是不是很熟啊,虽然今天的反转链表的题已经写的相对熟练了,可是还是不够理解,晚上接雨水这道题倒...

网友评论

      本文标题:链表题

      本文链接:https://www.haomeiwen.com/subject/iyjblctx.html