题解 | #二叉树遍历#

二叉树遍历

https://www.nowcoder.com/practice/4b91205483694f449f94c179883c1fef

#include "stdio.h"
#include "stdlib.h"

typedef struct BTNode {
    // 数据域
    char data;
    // 指针域
    struct BTNode* left_child;
    struct BTNode* right_child;
} BTNode, *BTree;

BTree preCreateTree(char* input, int* pi) {
    if ('#' == input[*pi]) {
        (*pi)++;
        return NULL;
    }
    BTNode* root = (BTNode*) malloc(sizeof(BTNode));
    root->data = input[*pi];
    (*pi)++;
    root->left_child = preCreateTree(input, pi);
    root->right_child = preCreateTree(input, pi);
    return root;
}

void inOrder(BTNode* node) {
    if (NULL == node)
        return;
    inOrder(node->left_child);
    printf("%c ", node->data);
    inOrder(node->right_child);
}

int main() {
    char buf[1024];
    struct BTNode* root = NULL;
    while (EOF != scanf("%s", buf)) {
        int index = 0;
        root = preCreateTree(buf, &index);
        inOrder(root);
        printf("\n");
        free(root);
    }
    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 13:15
点赞 评论 收藏
分享
叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务