给定一组权值(5.9.11.2.13),试设计相应的哈夫曼树并编码求WPL
解题步骤:
1.对权值按从小到大排序,取最小的两个,加合,并替换。本题中为2+5,并用结果7替换2和5,权值序列变为(7.9.11.13)
2.仍然取最小两值,本题取7,9,权值序列变为(11.13.16)
3.再次取两个最小值,本题中,由于本次取的两个值不包含上一次的和,所以另起一个新树权值序列变为(16.24)
4.再次取值求和
编码规则:默认左子树为0,右子树为1
所以
5:001
2:000
9:01
11:10
13:11
WPL计算:WPL=2 * 3+5 * 3 +9 * 2+11 * 2+13 * 2=87
ps:可理解为所有权值乘以深度的和