c*e
2 楼
read4网上到处有啊 本来就不是它家原创
Binary Tree Upside Down 顾名思义
Binary Tree Upside Down 顾名思义
c*e
3 楼
Binary Tree Upside Down 我猜是这个
http://www.careercup.com/question?id=6266917077647360
http://www.careercup.com/question?id=6266917077647360
w*p
4 楼
你能share钱么?
b*g
5 楼
就是这道。题目毕竟不是他家原创的,觉得没什么泄露不泄露的。
我的理解是这15/49刀买的是书,以及那10题使用OJ来测试你解答正确与否的service费
。这两样是LC自己的东西。
【在 c*******e 的大作中提到】
: Binary Tree Upside Down 我猜是这个
: http://www.careercup.com/question?id=6266917077647360
我的理解是这15/49刀买的是书,以及那10题使用OJ来测试你解答正确与否的service费
。这两样是LC自己的东西。
【在 c*******e 的大作中提到】
: Binary Tree Upside Down 我猜是这个
: http://www.careercup.com/question?id=6266917077647360
j*3
7 楼
1337 大牛不乖了,哼哼
b*g
8 楼
还没看过答案,我写了个递归做法,可能还有更好的解。递归的思路:
假设当前节点为r,需要先递归将r->left为根的子树upside down并返回最右叶子节点n
。然后将r->right接到n->left,将r接到n->right。由于此时新树的最右叶子节点为r
,返回r供上层递归使用。代码里的newRoot是为了返回整个树upside down后的新的根。
class Solution {
public:
TreeNode *upsideDownBinaryTree(TreeNode *root) {
TreeNode *temp, *newRoot = NULL;
temp = buildUpsideDownBT(root, newRoot);
return newRoot;
}
TreeNode *buildUpsideDownBT(TreeNode *root, TreeNode *&newRoot) {
if(!root) return root;
if(!root->left && !root->right) {
newRoot = root;
return root;
}
TreeNode *parent = buildUpsideDownBT(root->left, newRoot);
parent->left = root->right;
parent->right = root;
root->left = root->right = NULL;
return parent->right;
}
};
【在 j**********3 的大作中提到】
: 1337 大牛不乖了,哼哼
假设当前节点为r,需要先递归将r->left为根的子树upside down并返回最右叶子节点n
。然后将r->right接到n->left,将r接到n->right。由于此时新树的最右叶子节点为r
,返回r供上层递归使用。代码里的newRoot是为了返回整个树upside down后的新的根。
class Solution {
public:
TreeNode *upsideDownBinaryTree(TreeNode *root) {
TreeNode *temp, *newRoot = NULL;
temp = buildUpsideDownBT(root, newRoot);
return newRoot;
}
TreeNode *buildUpsideDownBT(TreeNode *root, TreeNode *&newRoot) {
if(!root) return root;
if(!root->left && !root->right) {
newRoot = root;
return root;
}
TreeNode *parent = buildUpsideDownBT(root->left, newRoot);
parent->left = root->right;
parent->right = root;
root->left = root->right = NULL;
return parent->right;
}
};
【在 j**********3 的大作中提到】
: 1337 大牛不乖了,哼哼
j*y
9 楼
好思路
点n
r
根。
【在 b******g 的大作中提到】
: 还没看过答案,我写了个递归做法,可能还有更好的解。递归的思路:
: 假设当前节点为r,需要先递归将r->left为根的子树upside down并返回最右叶子节点n
: 。然后将r->right接到n->left,将r接到n->right。由于此时新树的最右叶子节点为r
: ,返回r供上层递归使用。代码里的newRoot是为了返回整个树upside down后的新的根。
: class Solution {
: public:
: TreeNode *upsideDownBinaryTree(TreeNode *root) {
: TreeNode *temp, *newRoot = NULL;
: temp = buildUpsideDownBT(root, newRoot);
: return newRoot;
点n
r
根。
【在 b******g 的大作中提到】
: 还没看过答案,我写了个递归做法,可能还有更好的解。递归的思路:
: 假设当前节点为r,需要先递归将r->left为根的子树upside down并返回最右叶子节点n
: 。然后将r->right接到n->left,将r接到n->right。由于此时新树的最右叶子节点为r
: ,返回r供上层递归使用。代码里的newRoot是为了返回整个树upside down后的新的根。
: class Solution {
: public:
: TreeNode *upsideDownBinaryTree(TreeNode *root) {
: TreeNode *temp, *newRoot = NULL;
: temp = buildUpsideDownBT(root, newRoot);
: return newRoot;
相关阅读
老中Bart janitor 年收入 $270,000一道linkedin常见题,我的答案对吗?“蒙面小王子”(侧田)太为码农长志了才发现SalesForce这件事上有点low我软股票很猛丫有多少人参加了FLG在market上举办的庆祝活动?答题要注重解释思路,按部就班有人会降薪跳槽吗?震惊!加州捷运华裔清洁工年薪高达27万美元 (转载)版主不作为Dismissed Misdemeanor case会影响background check吗?airbnb昨天又发了一封信我其实一直想为一家在美的中国公司工作Airbnb发了一封邮件要求所有人的commitment要被炒了吗?收到了legal data hold的notice纽约曼哈顿nyc金融科技公司提供内推说说某家pip气人的地方Part time job可以用于申请OPT STEM extension吗?请教一下Premium Processing for H1B cases的问题Offer 比较