文章

43

粉丝

24

获赞

292

访问

6.5k

头像
二叉树遍历 题解:新手题解,勿喷
P1161 清华大学/南京大学2018机试题
发布于2025年2月28日 11:36
阅读数 265

#include<bits/stdc++.h> 
using namespace std;
typedef struct node{
    char data;
    struct node *left,*right;    
}*BiTree;
int cur=0;//全局变量:记录当前遍历到的字符串下标 (不可使用index)
void creattree(BiTree &T,string str) {//建树 
    if (cur >= str.size()) { // 不用修补多余的#,超出size的说明就是NULL 
        T = NULL;
        return;
    }
    if(str[cur]=='#') {
        T=NULL;
        cur++;//每遍历到一个元素index就++ 
    }
    else{
        T=new node;
        T->data=str[cur++];//每遍历到一个元素index就++ 
        //creattree(T->left,str,i+1);
        //creattree(T->right,str,i+1);逻辑有问题,如果这样的话,左右子树处理的都是同一个节点了 
  ...

登录查看完整内容


登录后发布评论

1 条评论
z1337390372
2025年3月5日 16:23

太强

 

赞(0)