题解 | #二叉搜索树的后序遍历序列 双指针#

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

https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd

import java.util.*;
public class Solution {
    public boolean VerifySquenceOfBST(int [] sequence) {
        if (sequence.length == 0){
            return false;
        }
        return Fuc(sequence);
    }
    public static boolean Fuc(int[] sequence) {
        if (sequence.length <= 1) {
            return true;
        }
        int left = 0;
        int right = sequence.length - 2;
        int head = sequence[sequence.length - 1];
        while (sequence[left] < head) {
            left++;
        }
        while (right >= 0 && sequence[right] > head) {
            right--;
        }
        if (left != right + 1) {
            return false;
        } else {
          return Fuc(Arrays.copyOfRange(sequence, 0, left))
                  && Fuc(Arrays.copyOfRange(sequence, left, sequence.length - 1));
        }
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-26 15:46
已编辑
字节国际 电商后端 24k-35k
点赞 评论 收藏
分享
我见java多妩媚:大外包
点赞 评论 收藏
分享
勤奋努力的椰子这就开摆:美团骑手在美团工作没毛病
投递美团等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务