每日一题 【每日一题】二叉查找树-20211129

Jack · 2021年11月29日 · 最后由 Jack 回复于 2021年11月30日 · 24 次阅读
本帖已被设为精华帖!

给定正整数 n,求以 1~n 为节点组成的不同的二叉查找树有多少种?

Jack 将本帖设为了精华贴 11月29日 21:24

参考代码:

class Solution:
    def numTrees(self, n):
        dp = [1, 1, 2]
        if n <= 2:
            return dp[n]
        else:
            dp += [0 for i in range(n-2)]
            for i in range(1, n+1):
                for j in range(1, i+1):
                    dp[1] += dp[j - 1] * dp[i-j]
            return dp[n]

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册