大家可以帮我看看哪里错了吗,剑指offer二叉搜索树的后序遍

不通过
您的代码已保存
请检查是否存在数组越界等非法访问情况
case通过率为0.00%
public class Solution {

    public  boolean VerifySquenceOfBST(int [] sequence) {
        if(sequence.length == 0){
            return false;
        }
        if(sequence.length == 1){
            return true;
        }
        return partation(sequence,0,sequence.length-1);
    }


    public  boolean partation(int[] arr, int left, int right){
        if(left == right){return true;}
        int i = left;
        while(arr[i]<arr[right]){i++;}
        int temp = i;
        while(i<right){
            if(arr[i]<arr[right]){return false;}
            i++;
        }
        return partation(arr,left,temp-1) && partation(arr,temp,right-1);
    }

   
}




#笔试题目##Java##悬赏#
全部评论
if(left >= right){return true;} 改上面那行就ok了,因为右半部分可能为空啊。。。
点赞 回复
分享
发布于 2019-07-19 17:30
没懂啊,什么时候会出现这种left>right的情况啊,不可能啊
点赞 回复
分享
发布于 2019-07-19 17:49
阿里巴巴
校招火热招聘中
官网直投

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务