首页 文章

具有N个节点和深度M的树的数量

提问于
浏览
2

N个节点和深度M确实存在多少棵树?我想知道可以用N个节点和深度M制作的任何类型的树(简单,二进制等)的数量 .

我一直试图为它找到一个公式,但到目前为止我还没有成功 . 有什么建议?提前致谢 .

1 回答

  • 1

    改变从根到深度“m”的节点数量,只考虑一个路径,你可以有“m”个节点,因此“m”个不同的树 - 如果你从根级别排除任何第i个节点等级“m” . 你将排除从i到m的整个路径 .

    现在,考虑到您可以以广度优先的方式插入“n”个节点,您将拥有“n”个节点的组合,因为每个节点可能彼此不同 . 这给出了“n”个节点的所有组合,“k”乘以“k”,对于每个可能的“k”,与2 ^ n相同 .

    将组合与不同数量的级别混合,每个级别都有各种组合,因为每个树结构可能代表不同的树 . 所有组合将涉及“m”级中的每一个的“n”个节点的组合的数量 .

    我真的不知道如何从这里得到最终的公式,但我会说你想要的值接近于(2 ^ n.m!),考虑到,对于每个可能的“n”节点组合给定级别,在m个不同级别中还存在这些节点的一组组合 .

    只是说清楚,我不确定如何计算这个,这是我能够直观地达到的最远 .

    参考确认k-combinations summed for all k's .

相关问题