其他分享
首页 > 其他分享> > 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的

作者:互联网

class Solution {
public:
    ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
        long long a=0,b=0,c=0;
        int i=0,y=0,j;
        int aa[1000000];
        while(l1!=NULL){
            a=a+(l1->val)*pow(10,i);
            i++;
            l1=l1->next;
        }
         while(l2!=NULL){
            b=b+(l2->val)*pow(10,y);
            y++;
            l2=l2->next;
        } 
        c=a+b; 
         ListNode *f=NULL;
        ListNode *p=NULL;
        for(j=0;c!=0;j++,c/=10){
            aa[j]=c%10;
        ListNode *pnew=new ListNode(aa[j]);
            if(f==NULL){
                f=pnew;
                p=pnew;
                continue;
            }
            f->next=pnew;
            f=pnew;   
        }
        ListNode *l3 = p;
        return l3;
        
    }
};

标签:10,存储,ListNode,它们,pnew,链表,l2,l1,NULL
来源: https://blog.csdn.net/ght1994119/article/details/99436134