剑指Offer----二叉搜索树的后序遍历序列

来源:互联网 发布:读出文字的软件 编辑:程序博客网 时间:2024/06/05 16:33

输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No假设输入的数组的任意两个数字都互不相同。

import java.util.Arrays;public class Solution {    public boolean VerifySquenceOfBST(int [] sequence) {        if(sequence==null||sequence.length==0)            return false;        int root=sequence[sequence.length-1];        int i=0;        for(;i<sequence.length-1;i++){            if(sequence[i]>root){                break;            }        }        int j=i;        for(;j<sequence.length-1;j++){            if(sequence[j]<root)                return false;        }        boolean left=true;        boolean right=true;        if(i>0){            left=VerifySquenceOfBST(Arrays.copyOfRange(sequence, 0, i));        }        if(i<sequence.length-1)            right=VerifySquenceOfBST(Arrays.copyOfRange(sequence, i, sequence.length-1));        return (left&&right);    }}


原创粉丝点击