假设通信电文使用的字符集为{a,b,c,d,e,f},各字符在电文中出现的频率分别为{34,5,12,23,8,18},利用构造Huffman树对每个字符进行编码,则其中编码长度最长的字符是()

假设通信电文使用的字符集为{a,b,c,d,e,f},各字符在电文中出现的频率分别为{34,5,12,23,8,18},利用构造Huffman树对每个字符进行编码,则其中编码长度最长的字符是()


A、

a,b 


B、

a,d 


C、

b,e


D、

e,f


【正确答案】:C
【题目解析】:

哈夫曼树的构造过程:
(1)由给定的值{34, 5, 12, 23, 8, 18}构造森林F= {34, 5, 12, 23, 8, 18},其中每个树为一棵只有根结点且其权为给定值的二叉树。
(2)从F中选取根结点的权最小的两棵二叉树5和8,构造一棵分别以5和8为左、右子树的新的二叉树,且置该二叉树的根结点的权5+8=13。

(3)从F中删去5、8,并将13加入F。此时F= {34, 13, 12, 23, 18}。此时F中仍多于一棵二叉树,则返回(2)。F的变化过程为{34,25, 23, 18},{34,25,41},{59,41},{100}。直到F中只含一棵二叉树为止,这棵二叉树就是哈夫曼树。如下图:


故b,e编码长度最长。选C。做题技巧:权值最小的两个数对应的编码长度最长。


Top