Leetcode||2. Add Two Numbers

来源:互联网 发布:仿ios日历 js插件 编辑:程序博客网 时间:2024/06/05 15:49

用一个变量记录进位。

//2. Add Two Numbers/** * 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 *p1=l1,*p2=l2,*head=new ListNode(0),*p=head;        int carry=0;        while(p1||p2)        {            int val1=0,val2=0;            if(p1)            {                val1=p1->val;                p1=p1->next;            }            if(p2)            {                val2=p2->val;                p2=p2->next;            }            int tmp=carry+val1+val2;            p->next=new ListNode(tmp%10);            carry=tmp/10;            p=p->next;        }        if(carry!=0)        {            p->next=new ListNode(carry);        }        return head->next;    }};
0 0
原创粉丝点击