📄 pingheng.c
字号:
#include<stdio.h>
#define null 0
typedef struct btnode {
char data;
struct btnode *lchild,*rchild;
}btnode,*bttree;
bttree serchnode(bttree t,char data){//检查是否有相同的字符,有返回空,没有返回该插入的接点位置
btnode *r,*f;
r=t;
while(r){
f=r;
if (r->data>data)
r=r->lchild;
else if (r->data<data)
r=r->rchild;
else {
f=null;
break;
}
}
return f;
}
vist(bttree t){//访问平衡二叉树
if (t){
vist(t->lchild);
printf("%c",t->data);
vist(t->rchild);
}
}
main(){
bttree p,q,s,t;
char c;
scanf("%c",&c);
t=(bttree)malloc(sizeof(btnode));
t->data=c;
t->lchild=null;
t->rchild=null;
p=t;
while((c=getchar())!=EOF && c!='\n'){//输入字符建树
s=(bttree)malloc(sizeof(btnode));
s->data=c;
s->lchild=null;
s->rchild=null;
q=serchnode(p,c);
if (q)
if (q->data>c)
q->lchild=s;
else
q->rchild=s;
}
vist(p);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -