[Leetcode] Add Two Numbers
来源:互联网 发布:淘宝信用卡哪个好 编辑:程序博客网 时间:2024/05/01 20:49
题目:
You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
思路:按节点相加。
class Solution {public: ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) { int carry = 0; ListNode dummy(0); ListNode* runner = &dummy; while (l1 != nullptr || l2 != nullptr || carry != 0) { int num1 = (l1 == nullptr) ? 0 : l1->val; int num2 = (l2 == nullptr) ? 0 : l2->val; int sum = num1 + num2 + carry; carry = sum / 10; ListNode* new_digit = new ListNode(sum % 10); runner->next = new_digit; runner = new_digit; l1 = l1 == nullptr ? nullptr : l1->next; l2 = l2 == nullptr ? nullptr : l2->next; } return dummy.next; }};
总结:复杂度O(n + m).
0 0
- LeetCode: Add Two Numbers
- LeetCode: Add Two Numbers
- [LeetCode]Add Two Numbers
- LeetCode Add Two Numbers
- Leetcode: Add Two Numbers
- LeetCode : Add Two Numbers
- LeetCode Add Two Numbers
- [LeetCode] Add Two Numbers
- Leetcode : Add Two Numbers
- 【leetcode】Add Two Numbers
- [LeetCode]Add Two Numbers
- leetcode Add Two Numbers
- LeetCode-Add Two Numbers
- [leetcode] Add Two Numbers
- [LeetCode] Add Two Numbers
- LeetCode - Add Two Numbers
- LeetCode | Add Two Numbers
- 【leetcode】Add Two Numbers
- S5PV210的时钟系统
- Spark视频第1期:Spark亚太研究院决胜云计算大数据时代:100期Spark公益大讲堂之革命Hadoop Spark把云计算大数据速度提高100倍以上
- 数据库范式
- 机房收费系统总结(二) — 总结再分析
- Spark视频第2期:Shark、SparkSQL
- [Leetcode] Add Two Numbers
- Spark视频第3期:Spark 1.0内核探索
- nyist 小博弈 大数求余
- Spark视频第4期:构建商业生产环境下的Spark集群实战
- 修改framework中config.xml的networkAttributes网络资源后导致CTS testGetAllNetworkInfo失败
- flashback之flashback query
- 平板是这么炼成的:谷歌新Nexus 7拆解
- Spark视频第5期:Spark SQL架构和案例深入实战
- 日常生活中的知识表及解题——找物品应用设想