0001 template <typename T> BinTree<T> BinTree<T>::secede(BNP<T> x) { //子树分离 0002 FromParentTo(x) = nullptr; //切断来自父节点的指针 0003 if (x->parent) x->parent->updateHeightAbove(); //更新原祖先们的高度 0004 BinTree<T> S; S._root = x; x->parent = nullptr; //新树以x为根 0005 S._size = x->size(); _size -= S._size; return S; //更新规模,返回子树 0006 } //secede