剑指offer33:验证二叉搜索树

class Solution:
    def  verifySquenceOfBST(self,sequence):
        n=len(sequence)
        if not sequence:
            return False
        if n<=2:
            return True
        for i in range(n-1):
            if sequence[i]>sequence[n-1]:
                break
        for j in range(i,n-1):
            if sequence[i]<sequence[n-1]:
                return False
        left=self.verifySquenceOfBST(sequence[:i])
        right=self.verifySquenceOfBST(sequence[i:n-1])
#         return self.verifySquenceOfBST(sequence[:i]) and self.verifySquenceOfBST(sequence[i:n-1])
        return left and right
# sequence=[5,7,6,9,11,10,8]
sequence=[7,4,6,5]
s=Solution()
s.verifySquenceOfBST(sequence)
发布了86 篇原创文章 · 获赞 1 · 访问量 8222

猜你喜欢

转载自blog.csdn.net/a1272899331/article/details/104558063