LeetCode 2. 两数相加

2. 两数相加

解题思路

初始化一个「空链表」,每次循环,向该链表末尾添加节点(保存当前个位数)

参考代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
ListNode dummy = new ListNode(0);
ListNode cur = dummy;
int carry = 0;

while(l1 != null || l2 != null || carry != 0) {
int val1 = (l1 == null) ? 0 : l1.val;
int val2 = (l2 == null) ? 0 : l2.val;
int sum = val1 + val2 + carry;
carry = sum / 10;
cur.next = new ListNode(sum % 10);
cur = cur.next;
if(l1 != null) {
l1 = l1.next;
}
if(l2 != null) {
l2 = l2.next;
}
}
return dummy.next;
}
}

LeetCode 2. 两数相加
https://sowink.cn/2026/02/08/LeetCode-2-两数相加/
作者
Xurx
发布于
2026年2月8日
许可协议