文章
7
粉丝
0
获赞
18
访问
412
#include <stdio.h>
#include <stdlib.h>
typedef struct TNode{//结点
char id;
struct TNode* lchild;
struct TNode* rchild;
}TNode,*Tree;
int creatNode(Tree* T,char c){//通过根结点找到合适位置,插入结点
TNode* child;
if(*T==NULL){//空树
child=(TNode*)malloc(sizeof(TNode));
child->id=c;
child->lchild=NULL;
child->rchild=NULL;
*T=child;
return 1;
}
if((*T)->id=='#'){//该结点是终端结点,不能在下面插入
return 0;
}
if(creatNode(&((*T)->lchild),c)==1){//递归尝试在左子树插入结点
return 1;
}else{
return creatNode(&((*T)->rchild),c);//左子树插入失败,在右子树递归插入
}
}
void deleteT...
登录后发布评论
暂无评论,来抢沙发