Caricare documenti e articoli online 
INFtub.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.
Meneame
 
Non ricordi la password?  ››  Iscriviti gratis
 

Esercitazione nona

informatica




Inviare l'articolo a Facebook Inviala documento ad un amico Appunto e analisi gratis - tweeter Scheda libro l'a WhatsApp - corso di

Esercitazione nona





In questa esercitazione Ŕ presentata la codifica in Java di un programma che, dati in ingresso una serie di interi, allochi tali interi su di un albero binario; successivamente, il programma stampa i valori dei nodi in modalitÓ preorder, postorder e inorder, calcola l'altezza di ogni nodo, la sua profonditÓ, l'altezza dell'albero ed infine stampa i valori dei nodi che si trovano sui livelli pari e quelli dei nodi che si trovano sui livelli dispar 828i85i i .


Programma Albero ( IX)







import java.io .* ;

public class Albero

public Albero ( int n )


public void aggiungi ( int n )

else

else if ( n%2 = =1 && this.fdx != null ) // il nodo Ŕ dispari

if ( this.fsx !=null && this.fdx !=null ) fdx.aggiungi ( n ) ; // chiamata ricorsiva

else if ( this.fdx = =null ) fdx =new Albero ( n ) ; // non c'Ŕ fdx quindi lo si crea

else fsx =new Albero ( n ) ; // c'Ŕ fdx ma non fsx quindi lo si crea

}

} // aggiungi


public void preorder ( ) // preorder


public void postorder ( ) // postorder


public void inorder ( ) // inorder


public int calcolaAlt ( )

else return 0 ; // Il nodo selezionato Ŕ una foglia

} // calcolaAlt


public int calcolaPro ( int n )

return i ;

}

else

return i ;

}

} // calcolaPro


public Albero cerca ( int n )

return tree ;

}

else

return tree ;

} } // cerca



public int calcolaAlt ( int n ) // calcolaAlt


public void livelli ( int n,Albero radice )

else

} // livelli


public static void main ( String argv[ ] ) throws IOException

t.preorder ( ) ; // stampa in preorder

System.out.println ( "" ) ;

t.postorder ( ) ; // stampa in postorder

System.out.println ( "" ) ;

t.inorder ( ) ; // stampa in inorder

System.out.println ( "" ) ;

System.out.println ( t.calcolaAlt ( ) ) ; // calcola l'altezza dell'albero

System.out.println ( t.calcolaAlt ( 4 ) ) ; // Altezza di un nodo a caso

System.out.println ( t.calcolaPro ( 4 ) ) ; // ProfonditÓ di un nodo a caso

System.out.println("") ;



t.livelli ( 2,t ) ; // livelli pari

System.out.println ( "" ) ;

t.livelli ( 3,t ) ; // livelli dispari

}



Esempi pratici
Inserire dieci valori
Input
Output preorder 0, 2, 4, 8, 6, 1, 5, 3, 9, 7
Postorder 7, 3, 9, 1, 5, 0, 6, 2, 4, 8
Inorder 8, 4, 2, 6, 0, 5, 1, 9, 3, 7
Altezza dell'albero : 3
Altezza del nodo 4 : 1
ProfonditÓ del nodo 4 : 2
Livelli pari 8 livello 4
2 livello 2
1 livello 2
9 livello 4
7 livello 4
Livelli dispari 4 livello 3
6 livello 3
0 livello 1
5 livello 3
3 livello 3
Inserire dieci valori
Input
Output preorder 0, 4, 2, 6, 8, 5, 1, 3, 7, 9
Postorder 9, 3, 7, 5, 1, 0, 8, 4, 2, 6
Inorder 6, 2, 4, 8, 0, 1, 5, 7, 3, 9
Altezza dell'albero : 3
Altezza del nodo 4 : 2
ProfonditÓ del nodo 4 : 1
Livelli pari 6 livello 4
4 livello 2
5 livello 2
7 livello 4
9 livello 4
Livelli dispari 2 livello 3
8 livello 3
0 livello 1
1 livello 3

3 livello 3






Privacy




Articolo informazione


Hits: 990
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI

E 'stato utile?



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2021