Bir İkili Arama Ağacı oluşturmak için özyinelemeli yöntemini kullanıyorum. Benim amacım ağacında düşük elemanı bulmaktır. Aşağıda benim koddur.
sokma
node insert(node root, int value)
{
if ( root == NULL )
{
return ((newNode(value)));
}
if ( root->info == value )
{
std::cout<<Duplicate entry found!<<std::endl;
return root;
}
else if ( root->info > value )
{
root->lChild = insert(root->lChild,value);
}
else if ( root->info < value )
{
root->rChild = insert(root->rChild,value);
}
else
std::cout<<Some error has occurred.Time to debug!<<std::endl;
return root;
}
MinValue İşlevi
int minValue(node curPtr)
{
node temp = curPtr;
while ( curPtr )
{
temp = curPtr->lChild;
}
return (temp->info);
}
(IMO) benim MINVALUE () sonsuz bir döngüye girmesini nedeni curPtr kaynaklanmaktadır her zaman BOŞ değildir. i komut () fonksiyonunu kullanarak veri ekledikten sonra Nasıl NULL yapabilirsiniz.
DÜZENLEME: aptalım bug..so buldum. Raymond sayesinde
aşağıda) (düzenlendi MINVALUE olduğu
int minValue(node curPtr)
{
node temp = curPtr;
while ( temp->lChild )
{
temp = temp->lChild;
}
return (temp->info);
}
Teşekkürler Kelly.













