0
我想找到一個節點的rigate子樹中的最小數字,下面的代碼是我認爲是解決方案,但它不能正常工作。這段代碼有什麼問題?如何找到右子樹上的最小數字
int small; // Where the smallest value is stored
int smallest(Node n)
{
if(n.info < small && aux != 0) small = n.info;
if(aux == 0)
{
aux = 1;
small = n.dir.info;
if(n!=NULL && n.dir!=NULL) return smallest(n.dir);
}
else{
if(n.dir != NULL) return smallest(n.dir);
if(n.esq != NULL) return smallest(n.esq);
}
return small;
}
什麼是「小」,它在哪裏聲明? – templatetypedef
我會說,這等於在常規樹中找到最小的,但不是將根傳遞給該函數,而是傳遞正確的子樹... – Copperfield