zoukankan      html  css  js  c++  java
  • leetcode-----2. 两数相加

    算法

    时间复杂度:(O(n))

    代码

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
            ListNode* ans = nullptr;
            ListNode* cur = nullptr;
            int carry = 0;
            while (l1 != nullptr || l2 != nullptr || carry != 0) {
                carry += (l1 == nullptr ? 0 : l1->val) + (l2 == nullptr ? 0 : l2->val);
                auto tmp = new ListNode(carry % 10);
                carry /= 10;
                if (ans == nullptr) {
                    ans = tmp;
                    cur = ans;
                } else {
                    cur->next = tmp;
                    cur = cur->next;
                }
                l1 = l1 == nullptr ? 0: l1->next;
                l2 = l2 == nullptr ? 0: l2->next;
            }
            return ans;
        }
    };
    
  • 相关阅读:
    wim文件位置
    用DISM++来管理wim当中的驱动
    交易所基金代码段
    systemd配置nginx
    MACD公式
    nginx配置
    linux的tmfps
    nohup&
    geth
    RGB
  • 原文地址:https://www.cnblogs.com/clown9804/p/12559995.html
Copyright © 2011-2022 走看看