【LeetCode】137链表求和

coding

题目:

解题思路:

对两个链表从头到尾遍历,将每个位的数字相加并插入到新建链表上。注意处理两个链表不等长。

https://leetcode-cn.com/problems/sum-lists-lcci/solution/javaji-bai-100-bi-kan-by-wonderzlf-v7dm/

代码:

public class LC145 {

public ListNode addTwoNumbers(ListNode l1, ListNode l2) {

// 判空输入

if (l1==null) {

return l2;

} else if (l2==null) {

return l1;

}

// 遍历两个输入链表

ListNode head = null;

ListNode first = null;

int tmp = 0;

while (l1!=null ||l2!=null) {

tmp =tmp+(l1!=null?l1.val:0)+(l2!=null?l2.val:0);

if (first==null) {

first = new ListNode(tmp%10);

head = first;

} else {

first.next = new ListNode(tmp%10);

first = first.next;

}

l1=(l1!=null?l1.next:null);

l2=(l2!=null?l2.next:null);

tmp /= 10;

}

// 处理相加的进位

if (tmp!=0) {

first.next = new ListNode(tmp);

}

return head;

}

}

以上是 【LeetCode】137链表求和 的全部内容, 来源链接: utcz.com/z/509487.html

回到顶部