N 节点和深度 M 存在多少棵树?我想知道可以用 N 个节点和深度 M 制作的任何类型的树(简单树、二叉树等)的数量。
我一直在努力寻找它的公式,但到目前为止我还没有成功。有什么建议么?提前致谢。
N 节点和深度 M 存在多少棵树?我想知道可以用 N 个节点和深度 M 制作的任何类型的树(简单树、二叉树等)的数量。
我一直在努力寻找它的公式,但到目前为止我还没有成功。有什么建议么?提前致谢。
改变从根到深度“m”的节点数,只考虑一条路径,您可以有“m”个节点,因此可以有“m”个不同的树——如果你从根级别排除任何第 i 个节点到级别“m”。您将排除从 i 到 m 的整个路径。
现在,考虑到您可以以广度优先方式插入“n”个节点,您将拥有“n”个节点的组合,因为每个节点可能彼此不同。这为您提供了“n”个节点的所有组合,“k”乘“k”,对于每个可能的“k”,whick 与 2^n 相同。
混合具有不同级别数量的组合,每个级别都有不同的组合,因为每个树结构可能代表不同的树。所有组合将涉及每个“m”级的“n”个节点的组合数量。
我真的不知道如何从中得出最终公式,但我会说你想要的值接近 (2^n . m!),考虑到这一点,对于 a 中“n”节点的每个可能组合给定级别,在m个不同级别中也有一组这些节点的组合。
只是为了说明清楚,我不确定如何精确计算,这是我直觉上能达到的最远距离。