leetcode 02 兩數相加

2021-09-26 20:06:04 字數 712 閱讀 6294

leetcode題目鏈結

題目要求:2個鍊錶 逆序表示十進位制樹,按位數 兩兩相加。

這題 我的的思路就是從個位慢慢往上加

如果加起來的值超過10,就要進製,新建節點的值為1。

class solution:

def addtwonumbers(self, l1: listnode, l2: listnode) -> listnode:

l3=listnode(0)

res=l3

temp=0 #儲存當前位數上的數值

while l1 or l2:

temp=0

if l1:

temp+=l1.val

l1=l1.next

if l2:

temp+=l2.val

l2=l2.next

if l3.val+temp>9: #如果當前取值超過10 向後進製

l3.val=(l3.val+temp)%10

l3.next=listnode(1)

l3=l3.next

else:

l3.val=temp+l3.val

if l1 or l2: #如果後一位存在,再新建節點

l3.next=listnode(0)

l3=l3.next

return res;

leetcode02 兩數相加

隨機一題 給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8 原因 342 465 807 思路 剛開始很蠢的我居然乙個乙個讀...

LeetCode 02 兩數相加

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 listno...

Leetcode 02 兩數相加

第二題難度中等 給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 2 4 3 5...