Друк назв книжок в алфавітному порядку
У цьому відео ви розглянули три способи обходу бінарних дерев за алгоритмом пошуку в глибину: in-order, pre-order та post-order.
У наведеному нижче бінарному дереві пошуку збережено назви кількох книжок.

Дерево вже створено у змінній bst (рядок 15):
bst = CreateTree()
Чи зможете ви застосувати обхід in-order, щоб назви книжок з'явилися в алфавітному порядку?
Ця вправа є частиною курсу
Структури даних і алгоритми в Python
Інструкції до вправи
- Перевірте, чи існує
current_node. - Рекурсивно викличте функцію
in_order()для відповідної половини дерева. - Виведіть значення
current_node. - Рекурсивно викличте функцію
in_order()для іншої половини дерева.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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)