Salve a tutti, sono nuova del forum e spero di poter trovare gente che mi possa aiutare
Ho iniziato da poco gli alberi binari e ho un problema con un metodo.

Dato un albero binario T e una Position V il metodo deve restituire il numero di nodi del sottoalbero di T radicato in v, se e solo se esso soddisfi la seguente proprietà : per ogni nodo w del sottoalbero radicato in v, il numero di nodi del sottoalbero destro deve essere maggiore o uguale al numero dei nodi del sottoalbero sinistro. (metodo ricorsivo) Se non soddisfa la proprietà il metodo deve restituire -1.

Adesso io ho buttato giù qualche riga di codice ma sembra che non vada. Qualcuno può aiutarmi per favore?


public int isRightLarger(BinaryTree<E> T, Position<E> v){
int numSinistro = 0; int numDestro = 0;

if(T.hasLeft(v))
numSinistro = isRightLarger(T, left());
if(T.hasRigt(v))
numDestro = isRightLarger(T, right());


if(numDestri >= numSinistri)
return numDestri + numSinistri + 1;
return -1;
}

Grazie in anticipo