hoe BST inorder traversal implementeren?

stemmen
0

Eigenlijk wat ik wil weten is niet hoe de uitvoering van de in-order traversal algoritme voor een BST, maar om het uit te voeren alleen met behulp van insertie, deletie en pre-order traversal algoritmen voor een BST.
U kunt ervan uitgaan dat u krijgt de implementaties voor standaard BST algoritmen voor insertie, deletie en pre-order traversal.

De vraag is gesteld op 18/10/2011 om 06:36
bron van user
In andere talen...                            


2 antwoorden

stemmen
0

Hmmm ... Laten we zeggen dat we hebben + op wortel en 1 aan de linkerkant knooppunt en 2 rechts node. De pre-order wordt + 1 2en om wordt 1 + 2.. Het verschil is dat 1 en 2 zijn verwisseld, dus als je insertie en deletie u recursief wisselen elke wortel nodewaarde met zijn linker nodewaarde en vervolgens met behulp van pre-order de boom, die zal terugkeren zal een inorder traversal veroorzaken doorkruisen.

Ik ben niet zeker of dit de weg te gaan, maar ik hoop dat het helpt.

antwoordde op 18/10/2011 om 06:46
bron van user

stemmen
0

Ik denk dat ik een oplossing gevonden. :)

we pre-orde traversal, insertie en deletie methoden.

Neem aan dat we krijgen een BST.

wat we doen is, we zorgen voor de pre-order traversal methode met de gegeven BST. sinds de pre-order traversal altijd naar het bovenliggende knooppunt eerste, we schrappen en elke wortel (omdat de wortel is de eerste ouder die we ontmoeten) knooppunt recursief totdat de linker sub boom van de wortel is nul.

nu heb je beginnen met het verwijderen van de wortel tot er geen knooppunten left.Put die verwijderd knooppunten in een matrix of waar u maar wilt. U zult de gesorteerde set knopen krijgen. (Dat wil zeggen de knopen zullen worden verwijderd in een gesorteerde order.The kleinste eerst en ga zo maar door ...)

antwoordde op 21/10/2011 om 07:54
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more