关于二叉树的平均高度是否有正式定义?
我有一个有关使用以下两种方法查找二叉树的平均高度的教程问题:
自然的解决方案可能是取从根到叶的所有可能路径的平均长度,即
。
另一种选择是递归定义它,即节点的平均高度是子树的平均高度加一的平均值,即
与对于叶子和为空时隙。l avh 2(_ )= 0
根据我目前的理解,例如树的平均高度
1
/ \
2 3
/
4
第二种方法是,即使用递归。
但是,我还是不太了解如何做第一个。不正确。
1
你能提供一些背景吗?没有“正确的”数学定义。您可以根据需要定义“二叉树的平均高度”。(平均什么过什么分布?),但不同的定义都会或多或少有用不同的应用。
—
JeffE 2012年
@JeffE“如何立即定义二叉树的平均高度还不是很明显。也许最自然的解决方案可能是拥有从根到叶的可能路径的平均长度。更简单(甚至是简单的)的解决方案就是说,一个节点的平均高度是子树的平均高度加1的平均值。您发现发现编写这种替代方案更容易。您可以举一些例子来说明差异吗?”
—
永恒的2012年
我试图通过给出两个变体的精确定义来使您的帖子更加清晰。请检查我是否正确解释了您的文字。特别是,您缺少第二个变体的锚点;您是否将叶子的高度设为1或0都会有所不同。
—
拉斐尔