二叉搜索树的后序遍历序列

来源:互联网 发布:centos如何安装rpm包 编辑:程序博客网 时间:2024/06/05 18:39

面试题24:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字互不相同

//二叉搜索树的后序遍历序列bool verifySquenceOfBST(int sequence[],int length){if(sequence==NULL||length==0)return false;int i=0;int root=sequence[length-1];//左子树序列for(;i<length-1;i++){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=verifySquenceOfBST(sequence,i);bool right=true;if(i<length-1)right=verifySquenceOfBST(sequence+i,length-i-1);return left&&right;}
参考:剑指offer 何海涛
0 0
原创粉丝点击