Add Two Numbers
来源:互联网 发布:什么是图灵机 知乎 编辑:程序博客网 时间:2024/06/08 01:35
-----QUESTION-----
You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of theirnodes contain a single digit. Add the two numbers and return it as a linked list.
Input:
Output:
-----SOLUTION-----
class Solution {public: ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) { if(!l1) return l2; if(!l2) return l1; int sum = l1->val + l2->val; int carry = sum/10; sum = sum % 10; ListNode* result = new ListNode(sum); ListNode* pResult = result; l1 = l1->next; l2 = l2->next; while(l1 && l2) { sum = l1->val + l2->val + carry; carry = sum/10; sum = sum % 10; pResult->next = new ListNode(sum); l1 = l1->next; l2 = l2->next; pResult = pResult->next; } if(carry!=0) { if(!l1&&!l2) { pResult->next = new ListNode(carry); return result; } if(l1) { pResult->next = l1; } else if(l2) { pResult->next = l2; } while(carry !=0 && pResult->next) { sum = pResult->next->val+carry; carry = sum/10; sum = sum % 10; pResult->next->val = sum; pResult = pResult->next; } if(carry!=0) pResult->next = new ListNode(carry); } else if(l1) pResult->next = l1; else if(l2) pResult->next = l2; return result; }};
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
- memset函数
- PHP实现数据库结果查询缓存
- vi 命令 用法
- 【产品经理】互联网产品与消费者期望
- 两起变量初始化问题的排查过程
- Add Two Numbers
- 2014年十大苦逼行业,看看你中枪了吗?
- libevent for qt网络模块,直接替换qt的select模型,支持epoll,select,pool.使用非常简单,无需修改以前的代码结构
- 目标检测学习记录——特征提取之HOG
- HTML绘图
- 黑马程序员-----集合框架知识小节1(第一篇)
- Longest Substring Without Repeating Characters
- Objective-C语言--iOS应用程序入口
- Python集合(set)类型的操作