树的带权路径长度怎么算

文 / admin
2024-07-10 评论 ()

树的路径长度为从树根至树中各个结点的路径长度的总和。在结点数量相同的二叉树中,完全二叉树的路径长度是最短的。

树的带权路径长度(Weighted Path Length of Tree),被定义为树中所有叶结点的带权路径长度的总和,通常可表示为:

其中:

n 代表叶子结点的数量

wi 和 li 分别表示叶结点 ki 的权值以及根到结点 ki 之间的路径长度。

树的带权路径长度也被称作树的代价。

一棵深度为 k,且拥有 2^k - 1 个节点的二叉树,被叫做满二叉树。该树的特点是每一层上的节点数均为最大节点数。而在一棵二叉树中,除了最后一层外,倘若其余层都是满的,并且最后一层要么是满的,要么是在右边缺少连续的若干节点,那么此二叉树就是完全二叉树。

具有 n 个节点的完全二叉树的深度为 floor(log2n) + 1。深度为 k 的完全二叉树,最少有 2^(k - 1) 个叶子节点,最多有 2^k - 1 个节点。

推荐阅读: