Facebook
From Violet Marmoset, 1 Year ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 72
  1. ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
  2.         ListNode *dummy = new ListNode();
  3.         ListNode *temp = dummy;
  4.         int carry = 0;
  5.         while( (l1 != NULL || l2 != NULL) || carry) {
  6.             int sum = 0;
  7.             if(l1 != NULL) {
  8.                 sum += l1->val;
  9.                 l1 = l1 -> next;
  10.             }
  11.            
  12.             if(l2 != NULL) {
  13.                 sum += l2 -> val;
  14.                 l2 = l2 -> next;
  15.             }
  16.            
  17.             sum += carry;
  18.             carry = sum / 10;
  19.             ListNode *node = new ListNode(sum % 10);
  20.             temp -> next = node;
  21.             temp = temp -> next;
  22.         }
  23.         return dummy -> next;
  24.     }