bool VerifySquenceOfBST(int sequence[],int length)
{
if(sequence==NULL||length<=0)
return false;
int root=sequence[length-1];
//在二叉搜索树中左子树的结点小于根结点
int j=i;
for(;j<length-1;++j)
{
if(sequence[i]>root)
break;
}
//在二叉搜索树中右子树的结点大于根结点
int j=i;
for(;j<length-1;++j)
{
if(sequence[j]<root)
return false;
}
//判断左子树是不是二叉搜索树
bool left=true;
if(i>0)
left=VerifySequenceOfBST(sequence,i);
//判断右子树是不是二叉搜索树
bool right=true;
if(i<length-1)
right=VerifySequenceOfBST(sequence+i,length-i-1);
return (left&&right);
}判断二叉搜索树的后序遍历序列
最新推荐文章于 2024-11-04 16:38:59 发布
本文介绍了一个用于验证给定序列是否为有效二叉搜索树后序遍历序列的算法。该算法首先检查序列的有效性,然后递归地确定序列是否符合二叉搜索树的性质。
452

被折叠的 条评论
为什么被折叠?



