Ciao a tutti, ho sempre la mia classe Binary tree e la classe Binary Nodo. Sta volta la classe BinaryNodo è composta dai seguenti campi:
int dato;
Nodo left;
Nodo right;
int contDouble;
Devo fare un metodo che scorre l'albero e ogni volta che incontro un Nodo con lo stesso valore devo incrementare il contDouble. Il mio probelma penso che sia che ogni qualvolta che dealloco lui vede il dato uguale e quindi incrementa sempre.
Questo è un esempio di come dovrebbe lavorare il metodo:
[IMG]
[/IMG]
Questo è il mio codice:
Grazie!!codice://CLASSE BINARY TREE public void countDupl () { if (root == null) throw new RuntimeException ("Albero vuoto"); else root.countDupl(); } //CLASSE BINARY NODE public int countDupl () { if (left != null) { if (left.dato == dato) contDouble = left.contDouble+1; contDouble += left.countDupl(); } if (right != null) { if (right.dato == dato) contDouble = right.contDouble+1; contDouble += right.countDupl(); } return contDouble; } }![]()


Rispondi quotando