初始叶子节点:A:2, B:3, C:4, D:5, E:6, F:10, G:11
步骤1:合并最小两个 A:2 和 B:3 -> 节点X1(5)
现在节点:C:4, D:5, E:6, F:10, G:11, X1:5
步骤2:合并最小两个 C:4 和 X1:5 -> 节点X2(9) [注意:这里有两个5(D:5和X1:5),我们选择最小的两个:4和5(X1)
现在节点:D:5, E:6, F:10, G:11, X2:9
步骤3:合并最小两个 D:5 和 E:6 -> 节点X3(11)
现在节点:F:10, G:11, X2:9, X3:11
步骤4:合并最小两个 X2:9 和 F:10 -> 节点X4(19)
现在节点:G:11, X3:11, X4:19
步骤5:合并最小两个 G:11 和 X3:11 -> 节点X5(22)
现在节点:X4:19, X5:22
步骤6:合并最后两个 X4:19 和 X5:22 -> 根节点(41)
41
/ \
19 22
/ \ / \
9 F G 11
/ \ / \
C 5 D E
/ \
A B
字符编码长度:
- A(频次2):路径长度4(根→左→左→右→左)
- B(频次3):路径长度4(根→左→左→右→右)
- C(频次4):路径长度3(根→左→左→左)
- D(频次5):路径长度3(根→右→右→左)
- E(频次6):路径长度3(根→右→右→右)
- F(频次10):路径长度2(根→左→右)
- G(频次11):路径长度2(根→右→左)
因此,各字符的编码长度:
A:4, B:4, C:3, D:3, E:3, F:2, G:2
编码长度不小于3(≥3)的字符:A(4)、B(4)、C(3)、D(3)、E(3)——共5个。
所以答案是5。
正确答案:D