Never be limited by other people's limited imaginations.|

zyc_xianyu

园龄:3年7个月粉丝:4关注:4

n个点二叉树的个数

N个节点的二叉树个数

先考虑只有一个节点的情形,f(1)=1

先固定根,递归考虑左右子树

用S1表示左子树,S2是右子树

f(2)=S1(1)+S2(1)=2

如果有三个节点呢?

左右子树的分布情况为2=0+2=1+1=2+0。

所以有3个节点时,递归形式为f(3)=f(2) + f(1)*f(1) + f(2).

那么有n个节点呢?我们固定一个节点,那么左右子树的分布情况为n-1=n-1 + 0 = n-2 + 1 = ... = 1 + n-2 = 0 + n-1

f(n) = f(n-1) + f(n-2)f(1) + f(n-3)f(2) + ... + f(1)f(n-2) + f(n-1)

前几个数为1,1,2,5,14,42,132。

此外,还有一个通项公式为1/(n+1) * C(n, 2n) = C(n, 2n) - C(n-1, 2n) , n = 0,1,2,...

卡特兰数公式

img

本文作者:zyc_xianyu

本文链接:https://www.cnblogs.com/zychh/p/16685762.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   zyc_xianyu  阅读(109)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起