Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Math: binary, tree

Сколько узлов в полностью заполненном (perfect) бинарном дереве высоты N?

Этот вопрос проверяет понимание структуры бинарного дерева и умение работать с геометрическими прогрессиями.

Короткий ответ

В полностью заполненном бинарном дереве каждый уровень полностью заполнен. Если высота дерева равна N (корень на уровне 0), то количество узлов равно 2^(N+1) - 1. Это связано с тем, что на каждом уровне количество узлов удваивается. Формула легко выводится как сумма геометрической прогрессии.

Длинный ответ

Полностью заполненное бинарное дерево — это идеальный пример структуры с регулярным ростом числа узлов.

Определение

Определение: Perfect бинарное дерево — бинарное дерево, в котором у каждого внутреннего узла есть ровно два потомка, а все листья находятся на одном уровне.

Как растёт количество узлов

Рассмотрим уровни дерева:

  1. Уровень 0 (корень): 1 узел

  2. Уровень 1: 2 узла

  3. Уровень 2: 4 узла

  4. Уровень k: 2^k узлов

Если высота дерева N, то уровни идут от 0 до N.

Вывод формулы

Общее число узлов — это сумма:

  • 1 + 2 + 4 + ... + 2^N

Это геометрическая прогрессия, сумма которой:

  • 2^(N+1) - 1

Пример

Для N = 2:

  • Уровни: 1 + 2 + 4

  • Всего: 7 узлов

Для N = 3:

  • 1 + 2 + 4 + 8 = 15

Вывод

  • Формула 2^(N+1) - 1 позволяет быстро считать узлы без построения дерева.

  • Она часто используется при анализе сложности алгоритмов на деревьях.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    4

Навыки

  • Math

    Math

Ключевые слова

#binary

#tree

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.