Код Senior Деревья обновлено

Проверка двоичного дерева поиска

Условие

Проверь, что дерево - корректное BST. Узел: { value, left, right }, значения уникальны.

Что проверяют тесты

  • корректное

  • нарушение через уровень

  • пустое дерево

Как подойти

Классическая ловушка: локальная проверка отца и сына пропускает нарушение через уровень. Правильная модель - передавать сверху допустимый диапазон и сужать его на каждом шаге. Альтернатива - центрированный обход должен давать строго возрастающую последовательность.

Подсказки: 2
  1. Проверки «левый меньше родителя» недостаточно.
  2. Каждый узел должен попадать в диапазон, унаследованный сверху.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме