IniziaInizia gratis

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.

Graphical representation of a binary search tree.

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

Visualizza il corso

Istruzioni dell'esercizio

  • Verifica se current_node esiste.
  • 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)
Modifica ed esegui il codice