• leetcode-----两数相加


    给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。

    如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。

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

    示例:

    输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
    输出:7 -> 0 -> 8
    原因:342 + 465 = 807
    

      

    题解:

    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) { val = x; }
     * }
     */
    class Solution {
        public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
            ListNode p=new ListNode(0);
            ListNode head=p;
            int carry=0;
            while(l1!=null||l2!=null||carry!=0)
            {
                int sum=((l1!=null)?l1.val:0)+((l2!=null)?l2.val:0)+carry;
                p.next=new ListNode(sum%10);
                carry=sum/10;
                p=p.next;
                l1=(l1!=null)?l1.next:l1;
                l2=(l2!=null)?l2.next:l2;
            }
            return head.next;
        }
    }
    

      

    参考网址:https://blog.csdn.net/hocsoul/article/details/80065254

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/add-two-numbers
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

  • 相关阅读:
    UML画图
    UML笔记
    电脑启动顺序
    评教有感
    部署图
    活动图
    给八期授课之主板电池的思考
    给八期授课之人员分配的思考
    构件图
    cocos2dx获得机器语言
  • 原文地址:https://www.cnblogs.com/longlyseul/p/12674708.html
Copyright © 2020-2023  润新知