leetcode 鍊錶 兩數相加

2021-10-04 00:11:30 字數 1181 閱讀 3762

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

如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。

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

示例:

輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)輸出:7 -> 0 -> 8原因:342 + 465 = 807
非遞迴實現:

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

if(l2==null)

int num = 0;

//記錄頭指標的前乙個指標,因為頭指標往後移動,最後不便於返回頭指標

listnode prehead = new listnode(0);

listnode currentnode = new listnode(0);

prehead.next = currentnode;

while(l1!=null || l2!=null || num!=0)

}return prehead.next;

}}

遞迴實現:

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

if(l2==null)

int value = l1.val+l2.val;

listnode head = new listnode(value%10);

head.next = addtwonumbers(l1.next, l2.next);

if(value>=10)

return head;

}}

兩數相加 LeetCode 鍊錶

給定兩個非空鍊錶來表示兩個非負整數。位數按照逆序方式儲存,它們的每個節點只儲存單個數字。將兩數相加返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。示例 輸入 2 4 3 5 6 4 輸出 7 0 8原因 342 465 807思路 在建立乙個新的鍊錶,然後再新鍊錶中進行操作...

leetcode 鍊錶兩數相加

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

Leetcode 兩數相加 鍊錶方式

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