求教:数据结构与算法的问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 18:39:58
假设消息是字符a,b,c,d,e组成的,各字符出现的概率分别是0.12, 0.4, 0.15, 0.08, 0.25,用一个二进制数字串对每个字符串编码,如何编码是平均编码长度最短,请给出编码过程和平均编码长度。

应该用哈弗曼树吧

图传上去很小 看不清楚 

根据字符出现频率构造哈弗曼树 然后将树中结点引向其左孩子的分支标“0” 引向其右孩子的分支标“1” 每个字符的编码即为从根到每个叶子的路径上得到的0,1序列

图中从左往右各叶子结点分别为cebda

编码:c:00

e:01

b:10

d:110

a:111

平均编码长度我不会算 没在笔记上找到 呵呵