【LeetCode with Python】 Add Two Numbers
2014-06-27 18:11
323 查看
博客域名:http://www.xnerv.wang
原题页面:https://oj.leetcode.com/problems/add-two-numbers/
题目类型:模拟四则运算
难度评价:★
本文地址:/article/1377520.html
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
一开始还想复杂了,以为链表头是最高位,于是还准备通过递归来解决。后来才发现原来原来链表头就是最低位,于是这题目的难度就几乎为0了。注意进位的处理,尤其是最后可能的进位。
原题页面:https://oj.leetcode.com/problems/add-two-numbers/
题目类型:模拟四则运算
难度评价:★
本文地址:/article/1377520.html
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
一开始还想复杂了,以为链表头是最高位,于是还准备通过递归来解决。后来才发现原来原来链表头就是最低位,于是这题目的难度就几乎为0了。注意进位的处理,尤其是最后可能的进位。
class Solution: # @return a ListNode def addTwoNumbers(self, l1, l2): cur1 = l1 cur2 = l2 carry = 0 head = ListNode(-1) cur = head while None != cur1 and None != cur2: plus = cur1.val + cur2.val + carry digit = plus % 10 carry = plus / 10 cur.next = ListNode(digit) cur = cur.next cur1 = cur1.next cur2 = cur2.next if None != cur1: while None != cur1: plus = cur1.val + carry digit = plus % 10 carry = plus / 10 cur.next = ListNode(digit) cur = cur.next cur1 = cur1.next elif None != cur2: while None != cur2: plus = cur2.val + carry digit = plus % 10 carry = plus / 10 cur.next = ListNode(digit) cur = cur.next cur2 = cur2.next if None == cur1 and None == cur2: ###must after if and elif if 1 == carry: cur.next = ListNode(1) return head.next
相关文章推荐
- 【leetcode with java】2 Add Two Numbers
- [Leetcode]2.Add Two Numbers @python
- 【Leetcode】【python】Add Two Numbers
- leetcode 2. Add Two Numbers python实现的理解,结点,单链表的应用,大数,进位的问题
- (python)leetcode刷题笔记 02 Add Two Numbers
- Leetcode 解题 Add Two Numbers Python
- leetcode python - addTwoNumbers
- 【leetcode】2. Add Two Numbers(Python & C++)
- Python leetcode #2 Add Two Numbers
- python写算法题:leetcode: 2. Add Two Numbers
- LeetCode 2. Add Two Numbers (C++/python/js实现)
- [LeetCode]4 Add Two Numbers(C++,Python实现)
- leetcode(二)—— Add Two Numbers(Python/C++)
- [leetcode:python] 2.Add Two Numbers
- leetcode 【 Add Two Numbers 】 python 实现
- 2.Add Two Numbers Leetcode Python New season for 2016
- Leetcode 2. Add Two Numbers(python)
- [LeetCode]题解(python):002-Add Two Numbers
- leetcode 2. Add Two Numbers python
- 【python】【leetcode】【算法题目2—Add Two Numbers】