j*n
2 楼
多练 没其他办法
p*2
5 楼
只是binary tree吗?
我准备写一个。应该10几行代码能搞定把?
我准备写一个。应该10几行代码能搞定把?
X*K
7 楼
15分钟是怎么个说法?记得CRLS里面定义了一个transplant函数,这样会容易一些。
p*2
8 楼
我写了一个
def merge(node1, node2):
if node1==None or node2==None:
return node1 if node2==None else node2
node1.right=merge(node2,node1.right)
return node1
def delete(root, node):
if root==None:
return None
elif root==node:
return merge(node.left,node.right)
else:
root.left=delete(root.left,node)
root.right=delete(root.right,node)
return root
def merge(node1, node2):
if node1==None or node2==None:
return node1 if node2==None else node2
node1.right=merge(node2,node1.right)
return node1
def delete(root, node):
if root==None:
return None
elif root==node:
return merge(node.left,node.right)
else:
root.left=delete(root.left,node)
root.right=delete(root.right,node)
return root
r*e
9 楼
is it so simple with python? or is it right? ;-)
i believe deletion of bst involves finding successor, rotate, etc.
admire first
【在 p*****2 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 我写了一个
: def merge(node1, node2):
: if node1==None or node2==None:
: return node1 if node2==None else node2
: node1.right=merge(node2,node1.right)
: return node1
: def delete(root, node):
: if root==None:
: return None
: elif root==node:
i believe deletion of bst involves finding successor, rotate, etc.
admire first
【在 p*****2 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 我写了一个
: def merge(node1, node2):
: if node1==None or node2==None:
: return node1 if node2==None else node2
: node1.right=merge(node2,node1.right)
: return node1
: def delete(root, node):
: if root==None:
: return None
: elif root==node:
K*n
14 楼
我也写了一个C的:
Node *del(Node *tree, int n){
Node *tmpNode;
if (tree == NULL)
perror("Element not found.");
else if (tree -> val > n) // go left
tree -> left = del(tree -> left, n);
else if (tree -> val < n)
tree -> right = del(tree -> right, n);
else{ // found n
if (tree -> left && tree -> right){ // two children
tmpNode = findMin(tree -> right);
tree -> val = tmpNode -> val;
tree -> right = del(tree -> right, tmpNode -> val);
}else{ // one or zero child
tmpNode = tree;
if (tree -> left == NULL)
tree = tree -> right;
else if (tree -> right == NULL)
tree = tree -> left;
free(tmpNode);
}
}
return tree;
}
Node *findMin(Node *tree){
if (tree == NULL)
return NLLL;
else if (tree -> left == NULL)
return tree;
else
return findMin(tree -> left);
}
【在 p*****2 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 我写了一个
: def merge(node1, node2):
: if node1==None or node2==None:
: return node1 if node2==None else node2
: node1.right=merge(node2,node1.right)
: return node1
: def delete(root, node):
: if root==None:
: return None
: elif root==node:
Node *del(Node *tree, int n){
Node *tmpNode;
if (tree == NULL)
perror("Element not found.");
else if (tree -> val > n) // go left
tree -> left = del(tree -> left, n);
else if (tree -> val < n)
tree -> right = del(tree -> right, n);
else{ // found n
if (tree -> left && tree -> right){ // two children
tmpNode = findMin(tree -> right);
tree -> val = tmpNode -> val;
tree -> right = del(tree -> right, tmpNode -> val);
}else{ // one or zero child
tmpNode = tree;
if (tree -> left == NULL)
tree = tree -> right;
else if (tree -> right == NULL)
tree = tree -> left;
free(tmpNode);
}
}
return tree;
}
Node *findMin(Node *tree){
if (tree == NULL)
return NLLL;
else if (tree -> left == NULL)
return tree;
else
return findMin(tree -> left);
}
【在 p*****2 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 我写了一个
: def merge(node1, node2):
: if node1==None or node2==None:
: return node1 if node2==None else node2
: node1.right=merge(node2,node1.right)
: return node1
: def delete(root, node):
: if root==None:
: return None
: elif root==node:
相关阅读
Job offer问题求助!求合作伙伴 HFT for Equity / Option急问,国内考大学, 该报什么专业 将来好找工作,发展前景比较好?求IBM test specialist 的面经Yahoo New York referF1转B2,FORM 539, 752.需要提交I-94原件?F1下学期不注册,多(转载)Capital One ,Richmond招统计 。有需要的站内联系我/Tell the CA Senate Why You Support Uber!ICC 打电话说要release offer了OPT REF, 着急!! 我这是加急被拒了吗???set up data mining model in SQl server 2008 win 7请问有没有python实现的数据结构和算法课?如果回到本科,平心静气想想自己放的错硅谷:老中何时可以放弃小中?你见过老印放弃小印吗?Re: Netflix 内推 (转载)test C# lib with developed by others in visual studio 2013 (转载)国内各行各业的套路回报本版- 贡献 FLG 电面面经 + 一点个人感受。找工作吹牛能吹多大?找startup refer的看过来!