Menu
Coddy logo textTech

Balanced Tree

Урок 11 из 13 курса Бинарное дерево — Серия «Структуры данных» №3 на Coddy.

Следующие задачи используют BinaryTree, которое вы создали. Используйте предоставленную реализацию для их решения.

challenge icon

Задание

Легко

Напишите функцию с именем isBalanced, которая принимает строку, представляющую BinaryTree (рекурсивная форма [value, leftSubtree, rightSubtree], где null означает пустое дерево), и возвращает true, если дерево сбалансировано, иначе false. Дерево считается сбалансированным, если для каждого узла высота его двух поддеревьев различается не более чем на 1.

Попробуйте сами

#include <stdio.h>
#include <string.h>
#include "solution.h"

int main() {
    char s[4096];
    if (!fgets(s, sizeof(s), stdin)) s[0] = '\0';
    s[strcspn(s, "\r\n")] = '\0';
    printf("%s\n", isBalanced(s) ? "true" : "false");
    return 0;
}

Все уроки раздела Бинарное дерево — Серия «Структуры данных» №3