第二张情况:
//该节点只有一个后代节点
if(cur.lc == null && cur.rc != null){
/*
从特殊到一般
*/
//只有两个节点的二叉树 删除了根节点 那么原来的根节点右孩子 //就是新的根节点
if(cur == root){
root = cur.rc;
}
//就是左孩子就是要寻找的节点
else if(islc){
pre.rc = cur.lc;
}
else{
pre.rc = cur.rc;
}
return true;
}
if(cur.lc != null && cur.rc == null){
if(cur == root){
root = cur.lc;
}
else if(islc){
pre.lc = cur.lc;
}
else{
pre.lc = cur.rc;
}
return true;
}
二叉树的删除节点2
最新推荐文章于 2022-09-10 13:26:45 发布