← 返回题库
初级

Is It a Binary Search Tree

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve(preorder):
    preorder = list(map(int, preorder.split(',')))
    def is_bst(arr, min_val, max_val):
        if not arr:
            return True
        root = arr[0]
        if root <= min_val or root >= max_val:
            return False
        i = 1
        while i < len(arr) and arr[i] < root:
            i += 1
        return is_bst(arr[1:i], min_val, root) and is_bst(arr[i:], root, max_val)
    print('true' if is_bst(preorder, float('-inf'), float('inf')) else 'false')

示例

输入
solve('2,1,3')
期望输出
true
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码