Stampare i titoli dei libri in ordine alfabetico
In questo video hai visto tre modi per implementare la visita depth first search negli alberi binari: in-order, pre-order e post-order.
Nel seguente albero di ricerca binario sono stati memorizzati i titoli di alcuni libri.

L'albero è stato caricato nella variabile bst (riga 15):
bst = CreateTree()
Riesci ad applicare la visita in-order in modo che i titoli dei libri compaiano in ordine alfabetico?
Questo esercizio fa parte del corso
Strutture dati e algoritmi in Python
Istruzioni dell'esercizio
- Verifica se
current_nodeesiste. - Chiama ricorsivamente la funzione
in_order()sulla metà appropriata dell'albero. - Stampa il valore di
current_node. - Chiama ricorsivamente la funzione
in_order()sull'altra metà dell'albero.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
class BinarySearchTree:
def __init__(self):
self.root = None
def in_order(self, current_node):
# Check if current_node exists
if ____:
# Call recursively with the appropriate half of the tree
self.in_order(current_node.____)
# Print the value of the current_node
print(____)
# Call recursively with the appropriate half of the tree
self.in_order(current_node.____)
bst = CreateTree()
bst.in_order(bst.root)