• 445. Add Two Numbers II ——while s1 or s2 or carry 题目再简单也要些测试用例


    You are given two linked lists representing two non-negative numbers. The most significant digit comes first and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.

    You may assume the two numbers do not contain any leading zero, except the number 0 itself.

    Follow up:
    What if you cannot modify the input lists? In other words, reversing the lists is not allowed.

    Example:

    Input: (7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)
    Output: 7 -> 8 -> 0 -> 7
    
    # Definition for singly-linked list.
    # class ListNode(object):
    #     def __init__(self, x):
    #         self.val = x
    #         self.next = None
    
    class Solution(object):
        def addTwoNumbers(self, l1, l2):
            """
            :type l1: ListNode
            :type l2: ListNode
            :rtype: ListNode
    Input: (7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)
    Output: 7 -> 8 -> 0 -> 7
    
    7->2->4->3
       5->6->4
    =-------------
    7->7->0->7
     ->1       
            """
            s1,s2 = [],[]
            p1,p2 = l1,l2
            while p1:
                s1.append(p1.val)
                p1 = p1.next
            while p2:
                s2.append(p2.val)
                p2 = p2.next
            carry = 0
            fake_head = ListNode(None)
            while s1 or s2 or carry:
                v1 = s1.pop() if s1 else 0
                v2 = s2.pop() if s2 else 0
                val = v1 + v2 + carry
                if val >= 10:
                    val -= 10
                    carry = 1
                else:
                    carry = 0
                head = ListNode(val)
                head.next = fake_head.next
                fake_head.next = head
            return fake_head.next                
  • 相关阅读:
    The jQuery UI CSS Framework(中文说明)
    锁定表头和固定列(Fixed table head and columns)
    html5学习二(canvas)
    浅析深究什么是SOA
    页面加载完毕后执行js函数的方法
    Spring AOP详解(转)
    db2move详解
    DB2 命令总汇
    Ubuntu下Apache的配置
    maven打包的一些问题
  • 原文地址:https://www.cnblogs.com/bonelee/p/6209472.html
Copyright © 2020-2023  润新知