由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - mirror 一个binary tree, 用non-recursive解法怎么做
相关主题
Interview question::FB面经
回馈本版,新鲜店面,新题新气象Google second phone interview
求问把二叉树的recursive遍历改为stack实现的思路请教个G题目
帮我看一下5行代码Print a binary tree in level order but starting from leaf node up to root
Populating Next Right Pointers in Each Node II有人同看Populating Next Right Pointers in Each Node II的recursive写法么?
问道G家的面试题。问个问题post order traveral using interation
插入节点到complete binary tree的末尾问一个C++的binary search tree类实现问题 (转载)
min depth binary tree用recursive解法一般能过关麽?一个小面筋
相关话题的讨论汇总
话题: curr话题: node话题: root话题: left话题: right
进入JobHunting版参与讨论
1 (共1页)
p*****a
发帖数: 147
1
rt
h*********n
发帖数: 11319
2
right child<-> left child?

【在 p*****a 的大作中提到】
: rt
W**********r
发帖数: 8927
3
用Stack,模拟BT的遍历过程,把节点压到Stack里去
p*****a
发帖数: 147
4
能详细说一下吗?

【在 W**********r 的大作中提到】
: 用Stack,模拟BT的遍历过程,把节点压到Stack里去
g******0
发帖数: 221
5
It looks like for each node n, you need to swap the node->left and node->
right. You can use BFS to push all nodes to a queue/array, then process one
node at a time.
Or like WindFollower said, use a stack.
r******n
发帖数: 170
6
感觉可以模仿postorder的iterative 方法写,也应该得加个visited flag
如下:
void mirror(Node* root)
{
if (root == NULL)
return;
mirror(root->left);
mirror(root->right);

Node* tmp =root->left;
root->left=root->right;
root->right=tmp;
}
void mirror_iter(Node* root)
{
if (root == NULL)
return;
stack nodeStack;
nodeStack.push(root);
while (!nodeStack.empty())
{
Node* curr=nodeStack.top();
if (curr->left != NULL && curr->left->visted==false)
{
nodeStack.push(curr->left);
}
else
{
if (curr->right != NULL && curr->right->visited==false)
{
nodeStack.push(curr->right);
}
else
{
curr->visited=true;
Node* tmp = curr->left;
curr->left=curr->right;
curr->right=tmp;
nodeStack.pop();
}
}
}
}

【在 p*****a 的大作中提到】
: 能详细说一下吗?
1 (共1页)
进入JobHunting版参与讨论
相关主题
一个小面筋Populating Next Right Pointers in Each Node II
F家phone interview的一道题问道G家的面试题。
Twitter电面未通过插入节点到complete binary tree的末尾
热腾腾的 LinkedIn 电面题攒RPmin depth binary tree用recursive解法一般能过关麽?
Interview question::FB面经
回馈本版,新鲜店面,新题新气象Google second phone interview
求问把二叉树的recursive遍历改为stack实现的思路请教个G题目
帮我看一下5行代码Print a binary tree in level order but starting from leaf node up to root
相关话题的讨论汇总
话题: curr话题: node话题: root话题: left话题: right