求助:二叉有序树出错,不知哪错,高手指教
#include<iostream.h>typedef struct lnode{
int data;
lnode *lchild,*rchild;
}lnode;
void insert(lnode *&t,lnode *&s){
if(t==NULL) t=s;
else if(s->data<t->data) insert(t->lchild,s);
else insert(t->rchild,s);
}
void create(lnode *&t,int a[],int n){
for(int i=0;i<n;i++){
lnode *s;
s=new lnode;
s->data=a[i];
s->lchild=s->rchild=NULL;
insert(t,s);
}
}
void inorder(lnode *&t){
inorder(t->lchild);
cout<<t->data;
inorder(t->rchild);
}
void main(void){
lnode *t;
int a[]={10,11,12,19,58,42,32,9};
create(t,a,sizeof(a)/sizeof(int));
inorder(t);
}#include<iostream.h>
typedef struct lnode{
int data;
lnode *lchild,*rchild;
}
void insert(lnode *&t,int key){
if(t==NULL){
t=new lnode;
t->data=key;
l->lchild=l->rchild=NULL;
}
else if(key<t->data) insert(t->lchild,key);
else insert(t->rchild,key);
}
void create(lnode *&t,int a[],int n){
t=NULL;
for(int i=0;i<n;i++)
insert(t,a[i]);
}
void inorder(lnode *&t){
inorder(t->lchild);
cout<<t->data;
inorder(t->rchild);
}
void main(void){
lnode *t;
int a[]={10,11,12,19,58,42,32,9};
create(t,a,sizeof(a)/sizeof(int));
inorder(t);
}
[[it] 本帖最后由 小磊学编程 于 2008-5-14 12:01 编辑 [/it]]