PDA

View Full Version : Problema ALBERI BINARI


Giovanni Tavella
04-08-2010, 10:25
Ho risolto un'esercizio , ma non sono scuro che sia giusto.
Posto la traccia e la soluzione (sperando in qualche:doh: correzione):


Si consideri una classe AlberoB che rappresenta alberi binari in cui la parte
informativa di ogni nodo è un numero intero.
Si assuma che in tale classe siano implementati i seguenti metodi:

public interface AlberoB {
/* restituisce il sottoalbero destro dell’albero corrente/
public AlberoB destro( );

/* restituisce il sottoalbero sinistro dell’albero corrente*/
public AlberoB sinistro( );

/* restituisce il valore memorizzato nella radice dell’albero */
public int val( );
}




Si deve realizzare un metodo
public static boolean eRipetuto (AlberoB a, int x) {…}
che restituisce true se e solo se vi è almeno un nodo n nell’albero a tale che l’intero
x appare sia nel sottoalbero sinistro che nel sottoalbero destro di n.



soluzione:

public static boolean eRipetuto (AlberoB a, int x) {
if(a.val()==null)return false;

if(a.sinistro().val()==x && a.destro().val()==x) return true;

return eRipetuto (a.destro( ),x) || eRipetuto (a.sinistro( ),x);
}

:help: :help:

cionci
04-08-2010, 15:27
Thread chiuso
|
V
http://www.hwupgrade.it/forum/showthread.php?t=1649196