不同的二叉搜索树(Python)
不同的二叉搜索树
给定一个整数n,求以1 ...n为节点组成的二叉搜索树有多少种?
示例:
输入: 3
输出: 5
解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树:
思路:
先有个列表dp,每个元素对应的索引就是n,值为种类数。dp[2]=2,dp[3]=5,至于dp[0],dp[1]没有意义,但是后面计算会用,设为1不会影响计算。
例子里n是3,还要有一个i从1开始循环到3,依次做根节点。
i=1时:左侧1种情况,右侧2种情况,一共有1*2种情况;dp[0]dp[2]
...
原创
2021-03-24 10:28:24 ·
201 阅读 ·
0 评论