美文网首页
leetcode的题目148 两数相加 II

leetcode的题目148 两数相加 II

作者: 二木二三水 | 来源:发表于2018-06-26 23:37 被阅读0次

    给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。     你可以假设除了数字 0 之外,这两个数字都不会以零开头。

    示例:

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

    输出: 7 -> 8 -> 0 -> 7

    思路:先将两个链表进行反转,再将每两个结点相加的结果放在较长的链表中,其中很重要的是要按照平时加分的计算步骤进行,两数相加存在进位的可能性,所以需要使用一个标记变量标记是否需要进位,这是进位和取余的执行步骤要注意理清,将较短的链表相加计算完毕后,要继续计算长链表(因为长链表中可能会有进位的可能),最后要测试是否有新的最高位(若有,则需要新建一个结点放到最后)。

    最后将链表反转并返回。

    相关文章

      网友评论

          本文标题:leetcode的题目148 两数相加 II

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