20 lines
670 B
Python
20 lines
670 B
Python
"""
|
|
Двоичное дерево поиска
|
|
|
|
Узел — словарь:
|
|
{'name': 'Имя', 'phone': '123', 'left': None, 'right': None}.
|
|
"""
|
|
|
|
def bst_insert(root, name, phone):
|
|
"""Рекурсивно или итеративно вставляет,
|
|
возвращает новый корень (если корень меняется)."""
|
|
|
|
def bst_find(root, name):
|
|
...
|
|
|
|
def bst_delete(root, name):
|
|
"""Удаление, возвращает новый корень."""
|
|
|
|
def bst_list_all(root):
|
|
"""Центрированный обход.
|
|
Рекурсивно собирает записи в отсортированном порядке.""" |