已知下列字符a、b、c、d、e、f、g的权值分别为4,13,8,5,3,并计算其wp l的值。
时间: 2023-12-28 07:44:56 浏览: 134
GPM算法的权值计算
4星 · 用户满意度95%
这道题可能有点问题,因为缺少字符p和l的权值,无法计算它们的wpl值。但是,如果假设p和l的权值分别为2和7,则可以如下计算wpl值:
先构建哈夫曼树:
1. 将所有字符按照权值从小到大排序,得到:a(4) e(3) d(5) g(8) p(2) b(13) c(8) f(13) l(7)
2. 取出权值最小的两个字符e和a,构建一棵新的子树,其权值为7
3. 将新的子树插入到原来的序列中,得到:d(5) g(8) p(2) b(13) c(8) f(13) l(7) e,a(7)
4. 重复上述步骤,得到哈夫曼树:
```
54
/ \
/ \
/ \
25 29
/ \ / \
/ \ / \
12 13 13 16
/ \ / \
e a d g
```
5. 计算wpl值:wpl = 4(2+2) + 13(2+2) + 8(2+3) + 5(3+3) + 3(4+3) + 7(4+3) + 13(4+3) + 8(4+4) = 168
因此,如果假设p和l的权值分别为2和7,则这些字符的wpl值为168。
阅读全文