文章

11

粉丝

0

获赞

70

访问

1.5k

头像
二叉树遍历 题解:
P1161 清华大学/南京大学机试题
发布于2026年3月4日 16:54
阅读数 82

//有多组数据 记得 在一次输出之后 换行 我因为这个换行改了好久 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

#include <stdio.h>
#include <string>
using namespace std;

struct TreeNode { //树的结构体
    char data;
    struct TreeNode *left;
    struct TreeNode *right;
};

void buildTree(struct TreeNode *&root, string s,int &i) {//根据字符串创建出树

//递归 第一行要先写出退出的条件
    if (i>=s.size()) return;

//每次递归只考虑此刻的这一个点 先序遍历的思想
    if (s[i]!='#') {
        root = new TreeNode();
        root->data = s[i];
        i++;
        root -> left = NULL;
        root -> right = NULL;
        buildTree(root->left,s,i);
        buildTree(root -> right,s,i);
    }
    else {
        root = NULL;
        i++;
    &nb...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发