Mn xem giúp mk bài này. Nó có chạy nhưng không in ra kết quả là sao?
#include<iostream>
using namespace std;
struct Node {
int data;
Node *left;
Node *right;
};
Node *getnode(int x){
Node *p=new Node();
p->data=x;
p->left= p->right=NULL;
return p;
}
Node *findinsert(Node *root,int x){
if(root==NULL){
return NULL;
}
Node *p=root;
Node *f=p;
while(p!=NULL){
f=p;
if(p->data>x) p->left;
else p=p->right;
return f;
}
}
void insertnode(Node * &root,int x){
Node *n=getnode(x);
if(root=NULL){
root=n;
return ;
}
else {
Node *f=findinsert(root,x);
if(f!=NULL){
if(f->data>x) f->left=n;
else f->right=n;
}
}
}
void createtree(Node *root, int a[],int n){
for(int i=0;i<n;i++)
insertnode(root,a[i]);
}
void NLR(Node *root){
cout<<" hien thi: ";
if(root!=NULL){
cout<<"\t "<<root->data;
NLR(root->left);
NLR(root->right);
}
}
int main(){
Node *root=NULL;
int a[]={5,10,7,9,2,13,20};
int n=7;
createtree(root,a,n);
// cout<<"NLR: ";
NLR(root);
}