給你兩個 非空 的鍊錶,表示兩個非負的整數。它們每位數字都是按照 逆序 的方式儲存的,並且每個節點只能儲存 一位 數字。
請你將兩個數相加,並以相同形式返回乙個表示和的鍊錶。
你可以假設除了數字 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 輸出...