/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
if(l1 == null && l2 == null)
return null;
//第一位数单独处理
int temp = l1.val + l2.val;
int add = temp / 10;
ListNode head = new ListNode(temp % 10,null);
ListNode rear = head;
ListNode p = l1.next,q = l2.next;
while(p != null && q != null){
temp = p.val + q.val + add;
add = temp / 10;
rear.next = new ListNode(temp % 10,null);
rear = rear.next;
p = p.next;
q = q.next;
}
while(p != null){
temp = p.val + add;
add = temp / 10;
rear.next = new ListNode(temp % 10,null);
rear = rear.next;
p = p.next;
}
while(q != null){
temp = q.val + add;
add = temp / 10;
rear.next = new ListNode(temp % 10,null);
rear = rear.next;
q = q.next;
}
if(add != 0){
rear.next = new ListNode(add,null);
rear = rear.next;
}
return head;
}
}
leetcode2. 两数相加
最新推荐文章于 2024-10-04 14:10:29 发布