Python-курс
🌳 Деревья

Дерево поиска (BST)

Упорядоченное дерево: поиск и вставка за O(log n).

~30 минПродвинутый 2 урока

Бинарное дерево поиска

BST (Binary Search Tree) — бинарное дерево с правилом упорядочивания: для любого узла все значения слева меньше его, все справа — больше. Это правило позволяет искать как в бинарном поиске: на каждом шаге отбрасываем половину дерева. Поиск, вставка и удаление — в среднем O(log n).

8 3 10 1 6 14 меньше ← 8 → больше
Слева от 8 всё меньше, справа — больше. То же правило на каждом уровне.
bst-search.py

Поиск идёт по одной ветке: сравнили с узлом и сразу решили, в какую половину спускаться. Для сбалансированного дерева высота ≈ log n, поэтому и поиск O(log n) — гораздо быстрее линейного перебора спискаИзменяемая упорядоченная коллекция элементов: [1, 2, 3]. По-английски list..

Шаг 1 из 7