已知7个叶子的权值为2415968构造哈夫曼树并计算其WPL值。
首先,将叶子节点按权值从小到大排序(1,2,4,5,6,8,9)。
然后,每次选取权值最小的两个节点合并成一个新的节点,其权值为两个节点权值之和,直到只剩下一个节点为止。过程如下:
第一步:合并1和2,得到一个新节点3,其权值为3。
第二步:合并3和4,得到一个新节点7,其权值为7。
第三步:合并5和6,得到一个新节点11,其权值为11。
第四步:合并7和8,得到一个新节点15,其权值为15。
第五步:合并9和11,得到一个新节点20,其权值为20。
第六步:合并15和20,得到一个新节点35,其权值为35。
最终得到的哈夫曼树如下图所示:
35
/ \
15 20
/ \ / \
7 8 9 11
/ \
3 4
/ \
1 2
计算WPL值:
从根节点出发,遍历每个叶子节点,记录下每个叶子节点的深度和权值,然后将每个叶子节点的权值乘以其深度,最后将所有叶子节点的权值乘以深度的和相加,即可得到WPL值。
1: 1 x 4 = 4
2: 2 x 2 = 4
4: 2 x 5 = 10
5: 2 x 6 = 12
6: 3 x 8 = 24
8: 3 x 9 = 27
9: 3 x 1 = 3
WPL值为4+4+10+12+24+27+3=84。
因此,该哈夫曼树的WPL值为84。
原文地址: https://www.cveoy.top/t/topic/dvhJ 著作权归作者所有。请勿转载和采集!