leetcode 2 两数相加

简介

简单, 因为感觉C++ 代码写的比较好, 遂放在博客中.

code

class Solution {
public:
    ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
        ListNode * r = new ListNode(0);
        ListNode * q = r;
        int putIn = 0;
        while(l1 != nullptr || l2 != nullptr || putIn > 0) {
            int a1 = l1 != nullptr ? l1->val : 0;
            int a2 = l2 != nullptr ? l2->val : 0;
            l1 = l1 != nullptr ? l1->next : nullptr;
            l2 = l2 != nullptr ? l2->next : nullptr;
            int tmp = a1 + a2 + putIn;
            putIn = tmp / 10;
            tmp = tmp % 10;
            ListNode *a = new ListNode(tmp);
            q->next = a;
            q = q->next;
        }
        return r->next;
    }
};
Hope is a good thing,maybe the best of things,and no good thing ever dies.----------- Andy Dufresne
原文地址:https://www.cnblogs.com/eat-too-much/p/14882342.html