Example #1
0
        carry = 0
        if val >= 10:
            val -= 10
            carry = 1
        node = ListNode(val)
        last.next = node
        last = node
        l2 = l2.next

    if carry == 1:
        node = ListNode(1)
        last.next = node

    head.traverse()

    return head


if __name__ == '__main__':

    l1 = ListNode.build_from_array([2, 4, 3])
    l2 = ListNode.build_from_array([2, 4, 3])
    ListNode.add_two_numbers(l1, l2)

    l1 = ListNode.build_from_array([5])
    l2 = ListNode.build_from_array([5])
    ListNode.add_two_numbers(l1, l2)

    l1 = ListNode.build_from_array([1])
    l2 = ListNode.build_from_array([9, 8])
    ListNode.add_two_numbers(l1, l2)