Java 什么';我的递归有什么问题?尝试在每次遍历中添加两个节点
似乎我的线性链表没有为每个递归连接。需要解释为什么我的代码不工作Java 什么';我的递归有什么问题?尝试在每次遍历中添加两个节点,java,data-structures,Java,Data Structures,似乎我的线性链表没有为每个递归连接。需要解释为什么我的代码不工作 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode addTwoNumbers(ListN
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
public class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
if(l1 == null)
return null;
int val = l1.val + l2.val;
ListNode newNode = new ListNode(val);
System.out.println(newNode.val);
return newNode.next = addTwoNumbers(l1.next, l2.next);
}
}
你的意见
[2,4,3]
[5,6,4]
你的性病
七,
10
七,
你的回答
[]
预期答案
[7,10,7]我认为您没有返回newNode.next。 必须使用newNode调用递归方法。下一步,但必须返回newNode。 注意:如果(l2==null)返回null,记得添加
代码>更改
return newNode.next = addTwoNumbers(l1.next, l2.next);
到
恕我直言,你不需要我们来做这个练习。在调试器下运行代码并亲自查看。我确实返回了newNode。@MikeNguyen如果返回newNode,似乎没有任何问题
newNode.next = addTwoNumbers(l1.next, l2.next);
return newNode