Menu
Coddy logo textTech

Balanced Tree

Coddyの「二分木 - データ構造シリーズ #3」コースのレッスン 11/13。

次のチャレンジでは、あなたが構築したBinaryTreeを使用します。提供された実装を使用して、それらを解決してください。

challenge icon

チャレンジ

簡単

BinaryTree を表す文字列(再帰的な [value, leftSubtree, rightSubtree] 形式、空の場合は null)を受け取り、その木が平衡(バランス)している場合は true を、そうでない場合は false を返す isBalanced という名前の関数を作成してください。すべてのノードにおいて、その2つの部分木の高さの差が最大で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のすべてのレッスン