python-leetcode-不同的二叉搜索树
96. 不同的二叉搜索树 - 力扣(LeetCode)
class Solution:
def numTrees(self, n: int) -> int:
dp = [0] * (n + 1)
dp[0], dp[1] = 1, 1
for i in range(2, n + 1): # 计算 dp[i]
for j in range(1, i + 1): # 选 j 作为根节点
dp[i] += dp[j - 1] * dp[i - j]
return dp[n]