Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Java Programming >> Content
Hoe om te doen Preorder Traversal in Binary Tree in Java
dit te doen een " traversal " van een binaire boom in Java betekent om een algoritmische verwerking van de knooppunten in een soort van orde te doen. Een " preorder " traversal betekent dat de root- knooppunt voor het eerst wordt verwerkt , en dan de rest van de boom knopen worden recursief verwerkt . De traversal functie zal eenvoudig elk knooppunt het bezoeken aan de console af te drukken . Instructies
1

Maak een eenvoudige binaire zoekboom klasse die een eenvoudige constructor welke waarde het knooppunt geïnitialiseerd heeft . Ook inbegrepen moet een insert methode om een ​​boom te doorkruisen en een nieuw knooppunt op de juiste plaats te zijn . " " public class BinaryTree { BinaryTree links; BinaryTree rechts; int waarde ; openbare BinaryTree ( int v ) { waarde = v ; } //Plaats een waarde in de boom public void insert ( int v ) { if ( v if ( links = = null ) links = new BinaryTree ( v ) ; anders left.insert ( v ) ; } else if ( v > value ) { if ( rechts == null ) rechts = new BinaryTree ( v ) ; anders right.insert ( v ) ; . } } } " " kopen van 2

Construct het hoofdknooppunt van de binaire boom , het toewijzen van een waarde die in de buurt van het gemiddelde van de van de objecten die je zult opslaan Dit zal zorgen voor efficiëntie , aangezien uw binaire boom nodig heeft om redelijk evenwichtig te zijn Als je het opslaan van een verdeling van de getallen van 1 tot 100 , bijvoorbeeld , 50 is een goede waarde voor de root- knooppunt " " BinaryTree b = new BinaryTree ( 50 ) ; " . '.
3

Insert nodes in de boom in een bepaalde volgorde . de binaire boom is niet auto- balancing , dus het plaatsen van knooppunten in een bepaalde volgorde helpt om het evenwicht te behouden . Hier de knooppunten zijn plaats een korte en efficiënte evenwichtige tree make " " 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

Doe een preorder traversal met het doorkruisen van de de wortel knoop eerst, dan de linker boom en uiteindelijk de juiste boom . het is gemakkelijk om dit recursief doen met een kleine binaire boom , omdat het niet een stack overflow . als uw binaire boom is zeer groot , moet de traversal functie worden gerealiseerd iteratief .
5

Voeg een nieuwe methode , preorder , aan de BinaryTree klasse . hier de methode drukt alleen de waarde van elk knooppunt het bezoekt . " " public void preorder ( ) { System.out.println ( waarde ) ; if ( links = null ! ) left.preorder ( ) if ( rechts = null ! ) right.preorder ( ) ;} " "
6

Roep de nieuwe methode na uw inserts naar de knooppunten in preorder print " " b.preorder ( ) ; " .

Previous: Next:
  Java Programming
·How to: iReport voor NetBeans 
·Hoe gebruik je een niet Operat…
·Hoe je Java Demonteer 
·Hoe te Instorten Lijsten maken…
·Hoe maak je een Java- programm…
·Hoe je meerdere nummers lezen …
·Hoe een bestand in Java versle…
·Hoe de grootste gemene deler v…
·Hoe de TextBox prefill Van Web…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Servlet vs Struts 
·Hoe te Coldfusion 8 installeren op IIS 6…
·How to Get Rid van Ontsnapte Tekens in P…
·Hoe maak je een string maken Immutable 
·Visual Basic Express 2008 XML-gegevens P…
·Hoe te WSDL converteren naar Java Met Ax…
·Hoe de tijd pubDate Verwijder in een RSS…
·Hoe om door Python Code 
·Hoe gebruik cURL PHP Pagina Inhoud Strin…
Copyright © Computer Kennis https://www.nldit.com