From 9faa0b0337cb1223555674e39234e3fbf3fe57cf Mon Sep 17 00:00:00 2001 From: Prad Nukala Date: Tue, 1 Sep 2026 14:39:45 -0400 Subject: [PATCH] feat(work): implement correct addTwoNumbers algorithm for linked list addition --- .../1/Medium/Linked List/2.add-two-numbers.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/work/1/Medium/Linked List/2.add-two-numbers.py b/work/1/Medium/Linked List/2.add-two-numbers.py index 47b5385..96f789f 100644 --- a/work/1/Medium/Linked List/2.add-two-numbers.py +++ b/work/1/Medium/Linked List/2.add-two-numbers.py @@ -53,9 +53,18 @@ class Solution: def addTwoNumbers( self, l1: Optional[ListNode], l2: Optional[ListNode] ) -> Optional[ListNode]: - head = ListNode() + + dummy = ListNode() carry = 0 - l1curr = head - l2curr = head - while head: - l1.val + l2.val + curr = dummy + while l1 or l2 or carry: + s = (l1.val if l1 else 0) + (l2.val if l2 else 0) + carry + carry, val = divmod(s, 10) + + curr.next = ListNode(val) + curr = curr.next + + l1 = l1.next if l1 else None + l2 = l2.next if l2 else None + + return dummy.next