| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Java Programming >> Content
    Come fare ordine simmetrico in albero binario in Java
    Java non ha una classe di albero binario , anche se è semplice per presentare una versione della struttura di dati per fare un ordine simmetrico . Un " attraversamento " di un albero binario è una procedura stereotipata per visitare ogni nodo dell'albero binario una volta . Un ordine simmetrico lo farà in modo ordinato . Traversal è spesso implementato come una sorta di iterator ( come una lista iterator ) oppure con un metodo che chiamerà un metodo di callback per ogni nodo . È possibile, tuttavia , fare questo senza l'utilizzo di callback o iteratori , invece la stampa sulla console ogni nodo visitato . Istruzioni
    1

    Creare una ricerca di classe di base albero binario . A questo punto , si avrà solo bisogno di un metodo di costruzione di base che inizializza il valore del nodo e un metodo di inserimento . Il metodo insert attraversamento di un albero e fare un nuovo nodo al posto giusto . " " public class BinaryTree { BinaryTree sinistra ; BinaryTree destra ; valore int ; pubblico BinaryTree ( int v) {valore = v; } //Inserire un valore nell'albero public void insert ( int v) {if (v if ( sinistra = = null) a sinistra = new BinaryTree ( v) ; altro left.insert (v );} else if (v > value) {if ( a destra == null) a destra = new BinaryTree ( v) ; altro right.insert (v ) , . . } } } " "
    2

    Creare l'istanza (nodo) dell'albero binario che sarà il nodo principale Come qualsiasi altro nodo , il nodo principale deve avere un valore di solito è meglio per scegliere un valore vicino alla media degli oggetti che stai memorizzazione , come alberi binari devono essere il più equilibrato possibile " " BinaryTree b = new BinaryTree (50); " . "
    3 < . . p > Inserire i nodi nella struttura ad albero in modo specifico per mantenere l'equilibrio, come questo albero binario non è auto - bilanciamento questo esempio viene creato il più piccolo albero possibile al fine di mantenere l'efficienza " " b.insert ( 20 ) ; b.insert ( 40 ) ; b.insert ( 10) ; b.insert ( 5) ; b.insert ( 45 ) ; b.insert ( 70); b.insert ( 60 ) ; b.insert ( 80) ; b.insert ( 55 ) ; b.insert ( 85); " "
    4

    muovono attraverso l'albero utilizzando un ordine simmetrico l'albero di sinistra è attraversato per primo, seguito dal nodo radice , e quindi l'albero giusto è . attraversato . Utilizzando la ricorsione , il codice è solo tre linee . Tuttavia, poiché la ricorsione richiede spazio di stack , dovrebbe essere usato con cautela . Con un piccolo ed equilibrato albero binario , ricorsione non overflow dello stack .
    5 < p> Aggiungi un nuovo metodo alla classe BinaryTree Java denominato ordine simmetrico ", " vuoto inorder pubblico ( ) {if ( sinistra = null ! ) left.inorder ( ) . System.out.println ( value); ! if ( destra = null ) right.inorder (); } " "
    6

    Chiamare il metodo ordine simmetrico dopo i vostri inserti per stampare i nodi in modo ordinato ". " b.inorder (); "

    Previous :

    next :
      Articoli Correlati
    ·Come sapere se un sito è basato su Java ? 
    ·Come fare un istogramma in Java 
    ·Come prova di INT con Groovy Test 
    ·Come scaricare file di origine Java Applet con il codic…
    ·Come usare CVS in Eclipse 
    ·NetBeans IDE 6.1 per cellulari Tutorials 
    ·Perché ho bisogno del software Java 
    ·Come convertire un intero in una stringa in Java 
    ·Come caricare le immagini in Java utilizzando NetBeans 
    ·Come aggiungere un TextField a una JApplet 
      Articoli in evidenza
    ·Come eliminare da un database MySQL 
    ·Come fare postordine in un albero binario in Java 
    ·Come spostarsi tra i fotogrammi in Java 
    ·Rendere il computer un Webserver : Apache , PHP , MySQL…
    ·Che cosa è Python 2.2.3 
    ·Come creare un foglio di calcolo di struttura dati Java…
    ·Come eliminare i record da una tabella SQL in PHP 
    ·Che cos'è un file PHP 
    ·Come scrivere codice per una tangente in VB.NET 
    ·Visual Basic Opzioni del comando 
    Copyright © Conoscenza Informatica http://it.wingwit.com