← 返回题库
中级

Root of AVL Tree

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve(____):
    nums = list(map(int, str(____).split(____)))
    class Node:
        def __init__(____):
            self.val = val
            self.left = None
            self.right = None
            self.height = ____
    def height(____):
        return node.height if node else ____
    def update(____):
        node.height = max(height(____), height(____)) + ____
    def rotate_right(____):
        x = y.left
        y.left = x.right
        x.right = y
        update(____)
        update(____)
        return x
    def rotate_left(____):
        y = x.right
        x.right = y.left
        y.left = x
        update(____)
        update(____)
        return y
    def insert(____):
        if not node:
            return Node(____)
        if val < node.val:
            node.left = insert(____)
        else:
            node.right = insert(____)
        update(____)
        b = height(____) - height(____)
        if b > ____:
            if val > node.left.val:
                node.left = rotate_left(____)
            return rotate_right(____)
        if b < -____:
            if val < node.right.val:
                node.right = rotate_right(____)
            return rotate_left(____)
        return node
    root = None
    for v in nums:
        root = insert(____)
    print(____)

示例

输入
solve('88,70,61,96,120')
期望输出
70
Python 代码 🔒 登录后使用
🔒

登录后即可练习

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