java方法2数据求和_Leet Code 2 Add Two Numbers - 链表表示的两个数求和 - Java
給定兩個(gè)鏈表表示的非負(fù)整數(shù),每個(gè)節(jié)點(diǎn)存儲(chǔ)一位數(shù),各位數(shù)以逆序存儲(chǔ)。將兩個(gè)數(shù)相加,以鏈表形式返回結(jié)果。
例如:
輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
輸出:7 -> 0 -> 8
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
public class Solution {
public static ListNode addTwoNumbers(ListNode l1, ListNode l2) {
ListNode h = null;
ListNode p = null;
int carry = 0;
while (l1 != null || l2 != null) {
int v = (l1 != null ? l1.val : 0) + (l2 != null ? l2.val : 0) + carry;
ListNode n = new ListNode(v % 10);
carry = v / 10;
if (h == null) {
h = n;
p = h;
} else {
p.next = n;
p = n;
}
if (l1 != null) {
l1 = l1.next;
}
if (l2 != null) {
l2 = l2.next;
}
}
if (carry != 0) {
p.next = new ListNode(1);
}
return h;
}
}
總結(jié)
以上是生活随笔為你收集整理的java方法2数据求和_Leet Code 2 Add Two Numbers - 链表表示的两个数求和 - Java的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米抢购茅台规则(小米有品飞天茅台抢购规
- 下一篇: java单例注册表_Java单例模式(S