思路
二叉排序树的中序序列为递增有序序列。
对给定二叉树进行中序遍历,若前值比后值小,则为二叉排序树。
KeyType predt=-32767;//保存当前结点中序前驱的值
int JudgeBST(BiTree bt){
int b1,b2;
if(bt==NULL){
return 1;
}else
{
b1=JudgeBST(bt->lchild);//判断左子树
if(b1==0||predt>=bt->data)//返回值为0或前序大于当前值
return 0;
predt=bt->data;
b2=JudgeBST(bt->rchild);//判断右子树
return b2;
}
}