Все темы
69

А это точно дерево поиска?

Tier 1Закрыто

Где применяется

1. Задача

В прошлом уроке ты строил дерево поиска вставками, поэтому правило порядка выполнялось само. Теперь дерево приходит извне: из загруженного файла, из индекса, который записала другая программа, из результата слияния двух деревьев. Прежде чем ему доверять, нужно проверить: это правда дерево поиска, где в каждом узле слева меньше, а справа больше?

Если нет, поиск по такому дереву будет молча возвращать неверные ответы. Поиск полагается на правило и отбрасывает целые поддеревья, не заглядывая в них.

Когда дереву можно доверять, появляется второй вопрос: какое значение третье по величине, если считать с наименьшего? Какое среднее по порядку (медиана)? Хочется получить k-е по порядку значение, не собирая все значения и не сортируя их.

Этот шаг из платной части

Бесплатные шаги в начале курса (их 33) открыты всем: урок, задача и тесты. Этот шаг открывается с полным доступом. Начни с бесплатного аккаунта и бесплатных шагов.

Завести бесплатный аккаунтПосмотреть, что входит

На LeetCode

Задачи, где нужно проверить или использовать порядок двоичного дерева поиска целиком. Неси вниз границы low и high или иди обходом in-order, который читает значения по возрастанию.

Мы используем необходимые куки для работы сайта (вход и язык). Если ты согласишься, мы также загрузим Google Analytics, чтобы видеть, какие страницы читают, и Google reCAPTCHA для защиты форм обратной связи и сообщений об ошибке от спама. Политика конфиденциальности