Mii che scema!! OpsOriginariamente inviato da Kaamos
Hai definito il metodo contaNodiSinistriMultipli(int) nella classe BinaryTree ed il metodo contaNodiConFiglioSinistroMultipli(int) nella classe BinaryNode, ma non c'è nessun metodo contaNodiConFiglioSinistroMultipli(int) nella classe BinaryTree, come giustamente ti dice il compilatore. Hai sbagliato semplicemente nome (supponendo che tree2 sia un oggetto BinaryTree).
Fra l'altro, in caso di albero vuoto, io ritornerei 0, non -1. Se l'albero è vuoto non ci sono nodi con figli sinistri aventi valore multiplo di 3, ma non si verifica nessuna condizione d'errore. E comunque quando vuoi segnalare condizioni d'errore sarebbe più appropriato sollevare un'eccezione, obbligando il chiamante a tenere conto dell'errore che si è verificato.
P.S.: BinaryNode dovrebbe essere privata, non pubblica. Chi utilizza l'albero deve interfacciarsi solo tramite le chiavi contenuto nei nodi, non deve vedere i nodi. Inoltre se hai già affrontato i generici, utilizzali.![]()
Solitamente ritorno -1 perchè così mi salta all'occhio che è un albero "particolare", comunque si se facessi una cosa più seria restituirei un'eccezione ma ora si tratta di semplici esercizi per allenarsi
Ok allora metto BinaryNode privata, grazie per il consiglio..
I generici non so cosa siano..


Rispondi quotando