分析:是否是二叉排序树,即看树的中序遍历是否为递增的即可
typedef struct node
{
ElemType data;
struct node *lchild,*rchild;
}BTree;
void solve(BTree T,int flag)
{
if(T && flag)
{
solve(T->lchild,flag);//中序遍历左子树
if(pre == null)
pre = T;//中序遍历的第一个结点不用判断
else
if(pre->data < T->data)
pre = T;
else
flag = false;
solve(T->rchild,flag);
}
}