#include<iostream>
using namespace std;
struct tree{
int key;
tree *_left,*_right,*_parent;
tree(int k=0,tree *l=NULL,tree *r=NULL,tree *p=NULL):key(k),_left(l),_right(r),_parent(p) {};
};
void insert(tree *tr,int k){
if(tr==NULL){
tr->key=k;
tr->_left=NULL;
tr->_right=NULL;
cout<<1;
}else if(tr->key>k){
insert(tr->_left,k);
}else if(tr->key<k){
insert(tr->_right,k);
}
return;
}
void print(tree* tr){
if(tr==NULL)return;
cout<<tr->key;
print(tr->_left);
print(tr->_right);
}
int main(){
int n;
cin>>n;
tree *_root=NULL;
for(int i=1;i<=n;i++){
int a;
cin>>a;
insert(_root,a);
}
print(_root);
return 0;
}
各位大佬们解释一下为什么我的二叉树一到插入的地方就死循环了呢?