/**
* Definition for binary tree with next pointer.
* public class TreeLinkNode {
* int val;
* TreeLinkNode left, right, next;
* TreeLinkNode(int x) { val = x; }
* }
*/
public class Solution {
// Collect each level and connect
public void connect(TreeLinkNode root) {
if (root == null) return;
Queue<TreeLinkNode> queue = new LinkedList<TreeLinkNode>();
queue.add(root);
while(!queue.isEmpty()){
TreeLinkNode temp = null;
int size = queue.size();
for (int i=0; i<size; i++){
if (i==0){
temp = queue.remove();
}else{
temp.next = queue.remove();
temp = temp.next;
}
if (temp.left != null){
queue.add(temp.left);
}
if (temp.right != null){
queue.add(temp.right);
}
}
}
}
}
Populating Next Right Pointers in Each Node II
最新推荐文章于 2021-01-29 16:34:55 发布