leetcode7整數(shù)反轉(zhuǎn)

# 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

? ? ? ? """

? ? ? ? #會(huì)有進(jìn)位,求進(jìn)位用相加的和對(duì)10取整求出來(lái)的是進(jìn)位的值,對(duì)10取余是留在當(dāng)前位的,

? ? ? ? if l1==None:

? ? ? ? ? ? return l2

? ? ? ? if l2==None:

? ? ? ? ? ? return l1


? ? ? ? dummy=ListNode(0)

? ? ? ? p=dummy

? ? ? ? carry=0

? ? ? ? while l1 and l2 :

? ? ? ? ? ? p.next=ListNode((l1.val+l2.val+carry)%10)

? ? ? ? ? ? carry=(l1.val+l2.val+carry)//10

? ? ? ? ? ? l1=l1.next

? ? ? ? ? ? l2=l2.next

? ? ? ? ? ? p=p.next

? ? ? ? if l1:

? ? ? ? ? ? while l1:

? ? ? ? ? ? ? ? p.next=ListNode((l1.val+carry)%10)

? ? ? ? ? ? ? ? carry=(l1.val+carry)//10

? ? ? ? ? ? ? ? l1=l1.next

? ? ? ? ? ? ? ? p=p.next

? ? ? ? if l2:

? ? ? ? ? ? while l2:


? ? ? ? ? ? ? ? p.next=ListNode((l2.val+carry)%10)

? ? ? ? ? ? ? ? carry=(l2.val+carry)//10

? ? ? ? ? ? ? ? l2=l2.next

? ? ? ? ? ? ? ? p=p.next


? ? ? ? if carry==1:

? ? ? ? ? ? p.next=ListNode(1)


? ? ? ? return dummy.next

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容