Add Two Numbers LeetCode solution in C++

1
class Solution {
2
public:
3
ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) {
4
ListNode *dummy = new ListNode(0);
5
ListNode *curr = dummy;
6
int carry = 0;
7

8
while (l1 != NULL || l2 != NULL || carry == 1) {
9
int sum = 0;
10
if (l1 != NULL) {
11
sum += l1->val;
12
l1 = l1->next;
13
}
14
if (l2 != NULL) {
15
sum += l2->val;
16
l2 = l2->next;
17
}
18
sum += carry;
19
carry = sum / 10;
20
ListNode *node = new ListNode(sum % 10);
21
curr->next = node;
22
curr = curr->next;
23
}
24
return dummy->next;
25
}
26
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0