/**
* 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) {
//辅助节点
ListNode dummy = new ListNode(-1);
//进位
int carry = 0;
for(ListNode p1 = l1, p2 = l2,cur = dummy; p1 != null || p2 != null || carry > 0;) {
if(p1 != null) {
carry += p1.val;
p1 = p1.next;
}
if(p2 != null) {
carry += p2.val;
p2 = p2.next;
}
//链表尾插
cur.next = new ListNode(carry % 10);
cur = cur.next;
//进位
carry /= 10;
}
return dummy.next;
}
}
2.两数相加
于 2018-08-15 01:22:40 首次发布