LeetCode2-Add Two Numbers In Python

本题给了两个逆序链表代表两个数字,要求将两个数字相加之后,再将结果用逆序链表的形式表示出来。

解题:链表顺序和数字顺序相反,正好按照链表顺序,从数字的个十百千。。。位加过去,大于十则往前进一。

代码:

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
        res=p=ListNode(0)
        x=0
        while l1 or l2 or x:
            if l1:
                x+=l1.val
                l1=l1.next
            if l2:
                x+=l2.val
                l2=l2.next
            p.next=ListNode(x%10)
            p=p.next
            x=int(x/10)
        return res.next

猜你喜欢

转载自blog.csdn.net/nlxxqqh1/article/details/88095553
今日推荐