运行结果正确。
讨厌递归,讨厌手动释放内存。
#include"stdio.h"
#include"stdlib.h"
typedef struct Tree_node{
int val;
struct Tree_node *pare;
struct Tree_node *left;
struct Tree_node *right;
}node,*tree;
//函数声明
void pre_tra(tree t);
//创造节点
node* creat_node(int val,node *pare,node *left,node *right){
node *n;
n=(node*)malloc(sizeof(node));
n->val=val;
n->pare=pare;
n->left=left;
n->right=right;
return n;
}
//创造什么也不关联的节点
node* creat_one(int val){
return creat_node(val,NULL,NULL,NULL);
}
/*//查找结点
tree find(tree t,int val){
//终止条件,要么找不到,t一直寻到NULL。
//要么找到了
if(t==NULL||t->val==val){
return t;
}
else if(t->val<val){
return find(t->right,val);
}
else{
return