こんにちは私はBSTを書いていて、子を追加するための次の関数を書きました。
void addChild(T value)
{
temp = root;
while(0 != temp)
{
temp1 = temp;
if(value > temp->getValue())
temp = temp->getRightChild();
else
temp = temp->getLeftChild();
}
if(temp1->getValue() > value)
{
temp1->setRightChild(new Child(value));
}
else
{
temp1->setLeftChild(new Child(value));
}
}
入力として「23 12 122 1 121 15」を与えています。ルートは、クラスのコンストラクターで作成しているノード 23 です。
問題:ツリー トラバーサルを行っているときに、出力として 23 と 15 しか得られません。 質問: この関数で何が間違っていますか?