//二叉搜索树的后序遍历序列
bool VerifySquencrOFBST(int sequence[],int n)
{
if(sequence == NULL || n<=0)
return false;
int root = sequence[n-1];
//左子树值都小于根节点
int i=0;
for(;i<n-1;++i)
{
if(sequence[i] > root)
break;
}
//右子树的值都大于根节点
int j=i;
for(;j<n-1;j++)
{
if(sequence[j] < root)
break;
}
//判断左子树是不是搜索树
bool left = true;
if(i>0)
left = VerifySquencrOFBST(sequence,i);
//判断右子树是不是搜索树
bool right = true;
if(j<n-1)
right = VerifySquencrOFBST(sequence+i,n-i-1);
return (left&&right);
}