0
この私の私の後継funcを見つける:AVLが後継
int
BalancedTree::successor(TreeNode *node) // successor is the left-most child of its right subtree,
{
TreeNode *tmp = node;
int successorVal = -1;
tmp = tmp->m_RChild;
if(NULL != tmp)
{
while(NULL != tmp->m_LChild)
tmp = tmp->m_LChild;
// now at left most child of right subtree
successorVal = tmp->m_nodeData;
}
return successorVal;
} // successor()
を私のインストラクターは、私たちにランダムデータで満たされたファイルを与えました。私はこのデータをすべてツリーに配置しますが、挿入メソッドは機能しますが、removeメソッドが開始されると、ある時点の後続関数は後継を探しているノードの同じ値を返します。これは正しいことではありませんか?私の後継機能は正しいのですか?削除方法を見たい場合は、それを言います。