由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 问个老题
相关主题
看着简单老是写不对的Binary Tree Zigzag Level Order TraversalA家一道onsite题
Interview question: Rebuild a tree with DFS output with level用queue 做树的广度优先遍历,空间复杂度是多少?
Binary Tree Level Order Traversal为什么老通不过请教word ladder| |
二叉树如何判断一个节点是不是在另外两个节点的path上。。。。好像是个老题了。。求解?MS onsite 面经
A tree questionpython里面怎么表示树?
请教一道Leetcode 题,多谢L家这题咋搞,巨变态
问tree的iterative traversalLevel order traversal只让用一个Queue怎么做?
一道在线题[面试题] 如何打印一个二叉树level by level?
相关话题的讨论汇总
话题: nextlevel话题: thislevel话题: node话题: treenode话题: queue
进入JobHunting版参与讨论
1 (共1页)
u****g
发帖数: 402
1
一个二叉树,怎么样做到每个节点指向同level的下一个节点
a*********0
发帖数: 2727
2
traverse the tree, mark the height of each node, traverse again, find the
first next node with the same height

【在 u****g 的大作中提到】
: 一个二叉树,怎么样做到每个节点指向同level的下一个节点
q*****9
发帖数: 85
3
BFS, one travesal
h**********d
发帖数: 4313
4
1.如果是full tree,可以用递归
2.如果不是full tree,笨办法用level-order traversal遍历,同时把当前节点next指
向queue.peek(),复杂度O(N)
写个java版本
void populate(TreeNode root){
if(root == null)return;
Queue queue = new Queue();
queue.put(root);
Node node;
int thisLevel = 1; int nextLevel = 0;
while(!queue.isEmpty()){
node = queue.pop();
thisLevel--;
if(thisLevel != 0){
node.setNextRight(queue.peek());
}
if(node.getLeft() != null){
queue.put(node.getLeft());
nextLevel++;
}
if(node.getRight() != null{
queue.put(node.getRight());
nextLevel++;
}
if(thisLevel == 0){
thisLevel = nextLevel;
nextLevel = 0;
}
}
}

【在 u****g 的大作中提到】
: 一个二叉树,怎么样做到每个节点指向同level的下一个节点
1 (共1页)
进入JobHunting版参与讨论
相关主题
[面试题] 如何打印一个二叉树level by level?A tree question
一道二叉树的老题请教一道Leetcode 题,多谢
Amazon Onsite 面经问tree的iterative traversal
Rebuild BST using pre-order travesal一道在线题
看着简单老是写不对的Binary Tree Zigzag Level Order TraversalA家一道onsite题
Interview question: Rebuild a tree with DFS output with level用queue 做树的广度优先遍历,空间复杂度是多少?
Binary Tree Level Order Traversal为什么老通不过请教word ladder| |
二叉树如何判断一个节点是不是在另外两个节点的path上。。。。好像是个老题了。。求解?MS onsite 面经
相关话题的讨论汇总
话题: nextlevel话题: thislevel话题: node话题: treenode话题: queue