class Solution {
public:
ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
ListNode* sentinel = new ListNode(0);
ListNode* d = sentinel;
int sum = 0;
while(l1 != NULL || l2 != NULL)
{
sum /= 10;
if(l1 != NULL)
{
sum += l1->val;
l1 = l1->next;
}
if(l2 != NULL)
{
sum += l2->val;
l2 = l2->next;
}
d->next = new ListNode(sum % 10);
d = d->next;
}
if(sum / 10 == 1)
d->next = new ListNode(1);
return sentinel->next;
}
};
之前看了一个看起来很难的答案看了很久也不是很懂,于是翻出了自己之前理解了的代码,瞬间就想起来了,还是要选择自己熟悉的方式,能用简洁的方式解答就不复杂化。
LeetCode-2
最新推荐文章于 2021-07-14 10:39:55 发布