文章

14

粉丝

80

获赞

0

访问

11.2k

头像
1161 二叉树遍历
我要提问
发布于2024年3月7日 15:05
阅读数 540

#include<bits/stdc++.h>
using namespace std;

typedef struct node{
	int data;
	struct node* lchild;
	struct node* rchild;
}*Bitree;

int i;
string s;
void precreate(Bitree &T){
	if(i>=s.size()) return;
	if(i<s.size()){
		char c=s[i++];
		if(c=='#') T=NULL;
		else{
			T=new node;
			T->data=c;
			precreate(T->lchild);
			precreate(T->rchild);
		}
	}
}

void InOrder(Bitree T){
	if(T==NULL) return;
	if(T!=NULL){		
		InOrder(T->lchild);
		cout<<T->data<<" ";
		InOrder(T->rchild);
	}
}

int main(){
	while(cin>>s){
		Bitree T;
		i=0;
		precreate(T);
		InOrder(T);
		cout<<endl;
	}
}

大佬,为什么runtime error了?

登录查看完整内容


登录后发布评论

1 条评论
snake VIP
2024年3月7日 16:06

创建节点的时候左右儿子设置为NULL

T->lchild=NULL;
T->rchild=NULL;

赞(0)