构造哈夫曼树步骤是,
选择两个权值最小的点构造树,新树根权值为左右子树权值之和,新的权值放回到序列中,继续按照上述不走构造树,直到只有一颗树为止。
权值排序一下:2 3 5 6 8
选择2和3构造树,权值序列变为
5 5 6 8
/ \
2 3
选择 5 5
6 8 10
/ \
5 5
/ \
2 3
选择 6,8构造权值14的树 然后选择 10,14,最终哈夫曼树为:
24
/ \
10 14
/ \ / \
5 5 6 8
/ \
2 3
树带权路径长度WPL = 2*3 + 3*3 + 5*2 + 6*2 + 8*2 = 53
就是每个叶子结点的权值*高度之和。