兩數相加 golang

2022-09-12 12:39:15 字數 1017 閱讀 8472

給你兩個 非空 的鍊錶,表示兩個非負的整數。它們每位數字都是按照 逆序 的方式儲存的,並且每個節點只能儲存 一位 數字。

請你將兩個數相加,並以相同形式返回乙個表示和的鍊錶。

你可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。

示例 1:

輸入:l1 = [2,4,3], l2 = [5,6,4]

輸出:[7,0,8]

解釋:342 + 465 = 807.

示例2:

輸入:l1 = [0], l2 = [0]

輸出:[0]

示例3:

輸入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]

輸出:[8,9,9,9,0,0,0,1]

兩個鍊錶非空則向下遍歷,val相加。

記錄進製,再每輪計算的值中加上進製。

建立下乙個結構,存入計算的值,向下遍歷。

func addtwonumbers(l1, l2 *listnode) (head *listnode) 

if l2 != nil

//計算當前節點值

sum := n1 + n2 + carry

sum, carry = sum%10, sum/10

//針對首次遍歷則建立首個結點

if head == nil

tail = head

} else

tail = tail.next}}

//考慮最後遍歷完l1、l2後仍有進製

if carry > 0

}return

}

leetcode之兩數相加Golang

definition for singly linked list.type listnode struct func addtwonumbers l1 listnode,l2 listnode listnode tail head begin if l1 nil l2 nil carry 1 el...

leetcode之兩數相加Golang

definition for singly linked list.type listnode struct func addtwonumbers l1 listnode,l2 listnode listnode tail head begin if l1 nil l2 nil carry 1 el...

python兩數相加取 兩數相加(Python3)

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