题解 | #有多少个不同的二叉搜索树#

有多少个不同的二叉搜索树

https://www.nowcoder.com/practice/16d23f940a084023b3be6019262589dc

import sys

# for line in sys.stdin:
#     a = line.split()
#     print(int(a[0]) + int(a[1]))

n = int(input())

dp =[0 for i in range(n+1)]
dp[0]=1
# i表示以i个节点有多少个二叉树
for i in range(1,n+1):
  #j表示以j为根节点的二叉树有几颗,以j为根节点将节点分为左边j-1个元素,和右边i-j个元素,j从1开始到i全部遍历
    for j in range(1,i+1):
        dp[i]+= dp[j-1]* dp[i-j]

print(dp[n])

全部评论

相关推荐

昨天 14:14
门头沟学院 Java
7.10投递7.15感谢信
投递地平线等公司7个岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 17:10
什么素质,我请问呢,要掉小珍珠了。。。又憋屈又生气
苍蓝星上艾露:给它们能的,一群dinner牛马挥刀向更弱者罢了。我写的开源求职AI co-pilot工具,优化你的简历,找到你匹配的岗位,定制你的简历,并让你做好面试准备https://github.com/weicanie/prisma-ai
点赞 评论 收藏
分享
05-27 14:57
西北大学 golang
强大的社畜在走神:27届真不用急,可以搞点项目、竞赛再沉淀沉淀,我大二的时候还在天天打游戏呢
投递华为等公司10个岗位
点赞 评论 收藏
分享
零OFFER战士:另一个版本查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务