Salve a tutti,
Mi trovo a dover affrontare questo problema
Ho un albero binario di ricerca avente ogni nodo questi campi { stringa nome, int key }
Seguendo la normale ricerca di un ABR, dovrei cercare l'elemento facilmente confrontando la key di tutti i nodi partendo dalla radice, e pian piano scendere verso destra o sinistra.
In questo problema invece mi viene chiesto di cercare il nodo confrontando il nome del nodo.
Io ho optato per una visita InOrder, in modo che visitavo tt i nodi fino a giungere a qll interessato ma non funziona sempre...
codice:
Nodo* RBTree::SearchInOrder(Nodo *&x, string &v)
{
if(x == Nil)
{
x->valore = "";
return x;
}
SearchInOrder(x->right, v);
if(x->valore.compare(v) == 0)
{
return x;
}
SearchInOrder(x->left, v);
}
Se avete qualke suggerimento, anke senza usare questa strada ma tutt'altro, ve ne sarei grato!



Ps. Come nodo di parametro viene data la radice