Add Two Numbers
来源:互联网 发布:易建联nba数据统计 编辑:程序博客网 时间:2024/06/05 07:09
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) { if(!l1) { return l2; } if(!l2) { return l1; } int val1=l1->val; int val2=l2->val; int carrier=(val1+val2)/10; int sum=(val1+val2)%10; ListNode* res=new ListNode(sum); ListNode* cpres=res; l1=l1->next; l2=l2->next; while(l1&&l2) { val1=l1->val; val2=l2->val; sum=(val1+val2+carrier)%10; carrier=(val1+val2+carrier)/10; ListNode* cur=new ListNode(sum); cpres->next=cur; cpres=cur; l1=l1->next; l2=l2->next; } if(l1) { while(l1) { val1=l1->val; sum=(val1+carrier)%10; carrier=(val1+carrier)/10; ListNode* cur=new ListNode(sum); cpres->next=cur; cpres=cur; l1=l1->next; } } if(l2) { while(l2) { val2=l2->val; sum=(val2+carrier)%10; carrier=(val2+carrier)/10; ListNode* cur=new ListNode(sum); cpres->next=cur; cpres=cur; l2=l2->next; } } if(carrier) { ListNode* last=new ListNode(carrier); cpres->next=last; } else { cpres->next=NULL; } return res; }};
0 0
- Add two numbers & Add binary
- LeetCode: Add Two Numbers
- Add Two Numbers
- LeetCode: Add Two Numbers
- [LeetCode]Add Two Numbers
- LeetCode Add Two Numbers
- Leetcode: Add Two Numbers
- Add Two Numbers
- LeetCode : Add Two Numbers
- LeetCode Add Two Numbers
- [LeetCode] Add Two Numbers
- LeetCode4: Add Two Numbers
- Leetcode : Add Two Numbers
- Add Two Numbers
- 【leetcode】Add Two Numbers
- add two numbers
- Add Two Numbers
- Add Two Numbers
- ExtJs xtype一览表
- 文件路径个人理解
- 苹果App Store审核指南中文翻译
- String to Integer (atoi)
- Reverse Integer
- Add Two Numbers
- 程序员如何参与创业
- 使用Intel编译器SSA
- AFNetwork 作用和用法详解
- Object-C 声明属性为什么用下划线,代码规范和编程风格
- 王思聪生日“成堆”手机电脑送来宾 嘉宾美女如云
- Median of Two Sorted Arrays
- [ssh2]list判断空,HQL from类,@Entity,Write operations are not allowed in read-only mode
- 数组作为函数的参数