为什么n个节点的二叉树是卡特兰数

本文探讨了n个节点的二叉树与卡特兰数之间的联系。通过将二叉树转化为完全二叉树,证明了两者数量的一一对应关系,并利用先序遍历解释了这一现象,指出其数量等于卡特兰数。
摘要由CSDN通过智能技术生成

刚刚接触卡特兰数的时候,对这个结论很蒙,因为左右括号、火车进站很好理解,结果是个2*n的序列,与卡特兰数的证明可以直接对应。但是对于二叉树,我却很难想到怎么构造成2*n个数的数列。

可以把二叉树转换成完全二叉树进行理解。

对于n个节点的二叉树,我们把这n个都当作父亲节点,一定可以补充(n+1)个叶子节点,使之成为一棵(2n+1)个节点的完全二叉树。我们把原来的二叉树称作父亲树,即全是父亲节点的树。

一棵父亲树一定与一棵完全二叉树一一对应。

 

(图片来自https://blog.csdn.net/Dashi_Lu/article/details/90109542) 

证明:

对于一棵完全二叉树,分为叶子节点和父亲节点。

首先,一棵父亲树到完全树加叶子节点只有一种方式,不会出现一颗父亲树对应多种完全树,所以这是一个映射。

任意一棵完全二叉树,删除所有叶子节点都是一颗父亲树。所以父亲树到完全二叉树是满射。

对于两个不同的父亲树,添加叶子后的完全二叉树一定不同。所以父亲树到完全二叉树是单射。

所以父亲树到完全二叉树是双射。完全二叉树的数量与父亲树的数量是相同的。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值