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

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

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-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务