Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Java Programming >> Content
    Hvordan gjøre inorder traversering i Binary Tree in Java
    Java har ikke et binært tre klasse , selv om det er enkelt å presentere en versjon av datastruktur for å gjøre en inorder traversering . A " traversering " av et binært tre er en formalistisk prosedyre for å besøke hver node på binærtreet en gang. En inorder traversering vil gjøre dette i sortert rekkefølge . Traversering er ofte implementert som en slags iterator (som en liste iterator ) eller ved en metode som vil kalle en tilbakeringing metode for hver node . Du kan imidlertid gjøre dette uten å bruke tilbakekall eller iteratorer , i stedet skrive til konsollen hver node besøkt. Instruksjoner
    en

    Lag en grunnleggende binært søketre klasse. På dette punktet , vil du bare trenger en enkel konstruktør-metoden som initialiserer nodens verdi og et innstikk metode. Innsatsen metoden vil traversere et tre og lage en ny node på rett sted . " " public class BinærTre { BinærTre venstre ; BinærTre høyre , int verdi ; offentlig BinærTre ( int v) { value = v ;} //Sett inn en verdi i treet public void insert ( int v ) { if ( v if ( venstre = = null ) venstre = new BinærTre ( v ) , ellers left.insert ( v ); } else if ( v > verdi) {if (høyre == null ) høyre = new BinærTre ( v ) , ellers right.insert ( v ) ; . . } } } " "
    2

    Lag forekomsten (node ​​) i det binære treet som vil være rotnoden som enhver annen node , må rotnoden til å ha en verdi det er vanligvis best å velge en verdi nær medianen av objektene du lagrer , som binære trær bør være så balansert som mulig " " BinærTre b = new BinærTre ( 50 ), " . "
    3 < . . p> Sett noder i treet i bestemt rekkefølge for å beholde balansen , da dette binære treet er ikke auto -balancing dette eksemplet oppretter den minste treet mulig for å opprettholde effektiviteten " " 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

    Move over tre ved hjelp av en inorder traversering den venstre treet er krysset først, etterfulgt av rotnoden , og deretter høyre treet er . krysset. bruk rekursjon , er koden bare tre linjer. Men siden rekursjon tar stakkplass , bør det brukes med forsiktighet. Med en liten og balansert binært tre , rekursjon vil ikke overløp stabelen .
    5 < p > Legg til en ny metode til Java BinærTre klasse kalt inorder " " public void inorder ( ) { if ( venstre = null ! ) left.inorder (); . System.out.println (verdi ); ! if ( høyre = null ) right.inorder (); } " "
    6

    Ring inorder metoden etter dine innsatser for å skrive ut nodene i sortert rekkefølge . " " b.inorder (); "

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan bygge en nettside ved hjelp Java 
    ·Hvordan bli kvitt den røde X i Java 
    ·Hvordan få makrovariablene Into Java Variabler 
    ·Hvordan endre en 0 til 1 i en Java-kode for Fractions 
    ·Hvordan håndtere en Minnet Feil i Java 
    ·En Java overstyring Overload 
    ·Slik formaterer du en variabel med én desimal i Java 
    ·Slik kjører Eclipse i JDK 
    ·Verktøy som brukes i Java 
    ·Hvordan åpne en URL i Java 
      Anbefalte artikler
    ·Hvordan bruke cURL å lese en fil i en variabel PHP 
    ·Hvordan Multipliser en matrise med en variabel i MATLAB…
    ·Hvordan skille mellom Avkort og Slett 
    ·Hvordan bygge en parser i Python 
    ·Hvordan finne sideantall for Print Dialog i VB.NET 
    ·Definisjon av Java Reserved Words 
    ·Hvordan erstatte en sprettende ball med en Bouncing Bir…
    ·Hvordan lage en Alert Box på Touch på BYOND : Dream M…
    ·Hvordan å kompilere DirectX Samples i Visual C 
    ·Oracle: Hvordan Split verdier i kolonner 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/