zoukankan      html  css  js  c++  java
  • leetcode 445 Add Two Numbers II

    class Solution {
    public:
        ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
            int len1=0,len2=0;
            ListNode *node1=l1,*node2=l2;
            while(node1) {
                ++len1;
                node1=node1->next;
            }
            while(node2) {
                ++len2;
                node2=node2->next;
            }
            node1=l1;node2=l2;
            while(len1>len2) {
                ListNode *node=new ListNode(0);
                node->next=node2;
                node2=node;
                ++len2;
            }
            while(len2>len1) {
                ListNode *node=new ListNode(0);
                node->next=node1;
                node1=node;
                ++len1;
            }
            int k=helper(node1,node2);
            if(k) {
                ListNode* node=new ListNode(1);
                node->next=node1;
                node1=node;
            }
            return node1;
        }
        int helper(ListNode* l1,ListNode* l2) {
            if(!l1||!l2) return 0;
            int k=0;
            k=helper(l1->next,l2->next);
            int sum=l1->val+l2->val+k;
            if(sum>9) {
                l1->val=sum-10;
                return 1;
            }
            else {
                l1->val=sum;
                return 0;
            }
        }
    };
  • 相关阅读:
    Binary Trees
    [POJ] String Matching
    Tree
    Maxmum subsequence sum problem
    poj 2104 划分树
    poj 2486 树形dp
    poj 1848 树形dp
    hdu 4578 线段树
    hdu 4585 set应用
    hdu 2412 树形DP
  • 原文地址:https://www.cnblogs.com/LiuQiujie/p/12665339.html
Copyright © 2011-2022 走看看