边看春晚边刷
一、题目
题目:116. 填充每个节点的下一个右侧节点指针
难度:中等
地址:https://leetcode-cn.com/problems/populating-next-right-pointers-in-each-node/
使用语言:Java
二、代码
class Solution {
public Node connect(Node root) {
if(root == null){
return null;
}
convertNode(root.left,root.right);
return root;
}
public Node convertNode(Node node_1,Node node_2){
if(node_1 == null || node_2 == null){
return null;
}
// next节点放入下一个结点的节点
node_1.next = node_2;
// 同一边子树连接在一起
convertNode(node_1.left,node_1.right);
convertNode(node_2.left,node_2.right);
// 将不同子树中节点连接在一起
convertNode(node_1.right,node_2.left);
return node_1;
}
}
三、细节注意
对象引用传递问题
在Java中,方法中对象参数都是以引用的形式传递的,所以需要在每次递归后传出被修改的对象