awesome-everything EN
↑ Обратно к восхождению

Алгоритмы с нуля

Деревья: тест с выбором ответа

Суть Синтез юнита деревьев в формате выбора — структура узла, выбор traversal, инвариант BST, баланс и высота, BFS против DFS и паттерн tree DP.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на middle-высоте — в небе
◷ 13 min

Шесть вопросов, проходящих сквозь весь юнит. Каждый — это решение, которое ты принимаешь, когда берёшь дерево в реальном коде: не определение для пересказа, а какой traversal, какой инвариант, какая сложность реально в игре.

Цель

Убедись, что ты связываешь структуру узла, выбор traversal, инвариант BST, баланс, BFS против DFS и паттерн tree DP — синтез, к которому вели отдельные уроки.

Викторина

Нужно вернуть значения binary search tree в порядке возрастания. Какой один traversal делает это напрямую и почему?

Викторина

Коллега вставляет ключи 1, 2, 3, 4, 5, 6, 7 в пустой BST именно в этом порядке, а затем жалуется, что поиск медленный. Что произошло и какова высота?

Викторина

Нужно сгруппировать каждый узел по его глубине — весь уровень 0, затем весь уровень 1 и так далее. Какой подход подходит и какова ключевая деталь реализации?

Викторина

В стандартном паттерне «рекурсия и комбинирование» для деревьев, что возвращает базовый случай для пустого поддерева при вычислении высоты (при соглашении, что лист имеет высоту 0)?

Викторина

При вычислении diameter binary tree (длиннейший путь между любыми двумя узлами) почему каждый рекурсивный вызов возвращает высоту поддерева, а diameter держится в боковой переменной?

Викторина

Два инженера сравнивают рекурсивный in-order traversal и level-order (BFS) обход одного и того же сбалансированного дерева с n узлами. Какова доминирующая дополнительная память каждого?

Итог

Сквозная линия юнита — одно соответствие: форма данных диктует инструмент. Binary tree это узел с двумя поддеревьями, поэтому рекурсия — естественный обход; три порядка DFS различаются лишь тем, когда посещается узел, и in-order — тот, что читает BST отсортированным. Инвариант BST покупает поиск O(h) — но только баланс держит h около log n, а вставка в отсортированном порядке это худший случай, обрушивающий её в O(n). BFS со снимком размера на каждом уровне — инструмент, когда важна глубина, меняющий стек на очередь. А tree DP возвращает локальную информацию вверх, накапливая глобальный ответ сбоку — один проход, две величины.

Продолжить восхождение ↑Деревья: тест на припоминание
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.