/**
* 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 *ListHead=new ListNode(0); //新建链表并调用构造函数初始化
ListNode *curr=ListHead;
int sum=0,carry=0;
while(l1||l2)
{
sum=0;
if(l1)
{
sum+=l1->val;
l1=l1->next;
}
if(l2)
{
sum+=l2->val;
l2=l2->next;
}
sum=sum+carry;
carry=sum/10;
curr->next=new ListNode(sum%10);
curr=curr->next;
}
if(carry>0)
{
curr->next=new ListNode(carry);
}
return ListHead->next;
}
};
20191019-leetcode-2两数相加(链表操作)
最新推荐文章于 2024-08-30 23:32:57 发布