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

来源:互联网 发布:java循环打印三角形 编辑:程序博客网 时间:2024/05/21 15:15

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

题目描述

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

public class Solution {    public boolean VerifySquenceOfBST(int [] sequence) {      return  VerifySquenceOfBST( sequence,0,sequence.length-1);    }     public boolean VerifySquenceOfBST(int [] sequence,int st,int end) {        if(st>end){            return false;        }        int root=sequence[end];        int temp=end;        for(int j=st;j<end;j++){            if(sequence[j]>root)            {                temp=j;                break;            }        }        for(int k=temp;k<end;k++){             if(sequence[k]<root)            {                return false;            }        }        boolean left=true;        if(temp>st)        left= VerifySquenceOfBST(sequence,0,temp-1);        boolean right=true;        if(temp<end)        right= VerifySquenceOfBST(sequence,temp,end-1);        return (left&&right);    }}
0 0
原创粉丝点击