siv*_*iva 68 tree binary-tree catalan
对于二叉树:没有必要考虑树节点值,我只对具有'N'节点的不同树拓扑感兴趣.
对于二进制搜索树:我们必须考虑树节点值.
Bla*_*der 73
二元树的总数= 
求和的总和给出了具有n个节点的二叉搜索树的总数.

基本情况是t(0)= 1且t(1)= 1,即有一个空BST并且有一个BST具有一个节点.

因此,通常您可以使用上面的公式计算二进制搜索树的总数.我在Google采访中被问到有关此公式的问题.问题是6个顶点可能有多少二元搜索树.所以答案是t(6)= 132
我想我给了你一些想法......
chi*_*92m 32
二叉搜索树的数量可以看作是递归解决方案.即,二进制搜索树的数量=(左二叉搜索子树的数量)*(右二叉搜索子树的数量)*(选择根的方式)
在BST中,只有元素之间的相对排序很重要.因此,在没有任何一般性损失的情况下,我们可以假设树中的不同元素是1,2,3,4,....,n.另外,对于n个元素,将bST的数量表示为f(n).
现在我们有多种情况来选择根.
......同样,对于第i个元素作为根,i-1元素可以在左边,ni在右边.
这些子树本身就是BST,因此,我们可以将公式概括为:
f(n)= f(0)f(n-1)+ f(1)f(n-2)+ .......... + f(n-1)f(0)
基本情况,f(0)= 1,因为正好有1种方法可以生成具有0个节点的BST.f(1)= 1,因为有一种方法可以生成一个带有1个节点的BST.

小智 5
具有n个节点的不同二叉树:
(1/(n+1))*(2nCn)
Run Code Online (Sandbox Code Playgroud)
其中C =组合例如.
n=6,
possible binary trees=(1/7)*(12C6)=132
Run Code Online (Sandbox Code Playgroud)