发布时间:2019-08-01 02:13:01
int Delete(BiTree * p)
{
BiTree q, s;
if ((*p)->lchild == NULL)
{
q = *p; //这里是怎么接上去的,都不知道上一个结点???
*p = (*p)->rchild;
delete q;
}
int BST_Delete(BiTree * T, int key)
{
if (!(*T))
{
return 0;
}
else
{
if (key == (*T)->data)
{
return Delete(T); //在这里调用的
}
else if (key < (*T)->data)
{
return BST_Delete(&(*T)->lchild, key); //递归
}
else
{
return BST_Delete(&(*T)->rchild, key); //递归
}
}
}
求解答???谢谢。