2. 两数相加
1 class Solution 2 { 3 public: 4 ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) 5 { 6 ListNode* dummy = new ListNode(-1); 7 ListNode* pre = dummy; 8 int C = 0;//进位 9 while(l1 || l2) 10 { 11 int val = (l1?l1->val:0) + (l2?l2->val:0) + C; //1、注意加括号 12 C = val / 10; 13 ListNode* temp_node = new ListNode(val % 10); 14 pre->next = temp_node; 15 pre = pre->next; 16 if(l1) l1 = l1->next; 17 if(l2) l2 = l2->next; 18 } 19 20 if(C) pre->next = new ListNode(C); //2、最后注意处理进位C 21 return dummy->next; 22 } 23 };
Mamba never out

浙公网安备 33010602011771号