下一题117. Populating Next Right Pointers in Each Node II
题意
输入:一个完美二叉树
输出:改变二叉树使所有节点的next指向右边的节点
思路:
stack存右边的每一个深度的最左节点,最深的在栈底。代码比较简洁,直接看代码吧。
解:
private final Stack
<Node> stack
= new Stack<>();
public Node
connect(Node root
) {
if (root
== null
)
return null
;
root
.next
= stack
.isEmpty() ? null
: stack
.pop();
connect(root
.right
);
connect(root
.left
);
stack
.push(root
);
return root
;
}