Začněte nyníZačněte zdarma

Výpis názvů knih v abecedním pořadí

V tomto videu jsi poznal/a tři způsoby, jak implementovat průchod do hloubky (depth first search) v binárních stromech: in-order, pre-order a post-order.

V následujícím binárním vyhledávacím stromě jsou uloženy názvy několika knih.

Graphical representation of a binary search tree.

Strom je předem načten do proměnné bst (řádek 15):

bst = CreateTree()

Dokážeš použít průchod in-order tak, aby se názvy knih zobrazily v abecedním pořadí?

Toto cvičení je součástí kurzu

Datové struktury a algoritmy v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Zkontroluj, zda current_node existuje.
  • Zavolej funkci in_order() rekurzivně na příslušné polovině stromu.
  • Vypiš hodnotu current_node.
  • Zavolej funkci in_order() rekurzivně na druhé polovině stromu.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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)
Upravit a spustit kód