构建树
Coddy 二叉树:数据结构系列第 3 篇 课程的第 6 课,共 13 课。
挑战
简单为 BinaryTree 添加一个 buildTree 方法,接收树的递归字符串表示形式([value, leftSubtree, rightSubtree],空树用 null 表示),并构建这棵树。
亲手试试
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "binarytree.h"
void rtl(Node* n) {
if (n == NULL) return;
printf("%d\n", Node_getValue(n));
rtl(Node_getRight(n));
rtl(Node_getLeft(n));
}
int main() {
char buf[4096];
if (!fgets(buf, sizeof(buf), stdin)) buf[0] = '\0';
buf[strcspn(buf, "\r\n")] = '\0';
BinaryTree bt;
BinaryTree_init(&bt);
BinaryTree_buildTree(&bt, buf);
rtl(BinaryTree_getRoot(&bt));
return 0;
}
二叉树:数据结构系列第 3 篇中的所有课
自己练习: C 在线编译器