leetcode 445 兩數相加 II

2021-10-10 05:19:37 字數 1573 閱讀 8476

給你兩個 非空 鍊錶來代表兩個非負整數。數字最高位位於鍊錶開始位置。它們的每個節點只儲存一位數字。將這兩數相加會返回乙個新的鍊錶。

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

高階:如果輸入鍊錶不能修改該如何處理?換句話說,你不能對列表中的節點進行翻轉。

示例:

輸入:(7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)

輸出:7 -> 8 -> 0 -> 7

翻轉 頭插法

/**

* definition for a singly-linked list.

* class listnode

* }*/class

solution

elseif

($l1&&!

$l2)

elseif(!

$l1&&

$l2)

$val+=

$carry

;$carry

=intval

($val/10

);$node

=new

listnode

($val%10

);$node

->

next

=$prev

->

next

;$prev

->

next

=$node;}

return

$prev

->

next;}

function

reverse

($head

)return

$prev;}

}

高階(雙棧):

/**

* definition for a singly-linked list.

* class listnode

* }*/class

solution

elseif

($st1

&&empty

($st2))

elseif

(empty

($st1)&&

$st2

)$val+=

$carry

;$carry

=intval

($val/10

);$node

=new

listnode

($val%10

);$node

->

next

=$prev

->

next

;$prev

->

next

=$node;}

return

$prev

->

next;}

function

push_stack

($head

)return

$res;}

}

leetcode 445 兩數相加 II

給定兩個非空鍊錶來代表兩個非負整數。數字最高位位於鍊錶開始位置。它們的每個節點只儲存單個數字。將這兩數相加會返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。輸入 7 2 4 3 5 6 4 輸出 7 8 0 7 分別遍歷兩個鍊錶,將鍊錶代表的數存於a,b 根據a,b的和,用...

Leetcode445 兩數相加 II

給定兩個非空鍊錶來代表兩個非負整數。數字最高位位於鍊錶開始位置。它們的每個節點只儲存單個數字。將這兩數相加會返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。高階 如果輸入鍊錶不能修改該如何處理?換句話說,你不能對列表中的節點進行翻轉。示例 輸入 7 2 4 3 5 6 4 ...

LeetCode 445 兩數相加II(Java)

給定兩個非空鍊錶來代表兩個非負整數。數字最高位位於鍊錶開始位置。它們的每個節點只儲存單個數字。將這兩數相加會返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。高階 鍊錶不能修改該,換句話說,你不能對列表中的節點進行翻轉。示例 輸入 7 2 4 3 5 6 4 輸出 7 8 0...