数据结构第06章_树和二叉树.ppt

数据结构第06章_树和二叉树

2)前缀编码 若对某一字符集进行不等长编码,则要求字符集中任一字符的编码都不能是其他字符编码的前缀。符合此要求的编码叫做前缀编码。 如何设计前缀编码? 利用二叉树设计二进制的前缀编码 如何得到电文总长最短的二进制前缀编码呢? 0 1 a b c d 1 1 0 0 假设有一棵如左图所示的二叉树,四个叶结点分别表示A、B、C、D四个字符,且约定左分支表示字符‘0’,右分支表示字符‘1’,则可以从根结点到叶子结点的路径上以分支字符组成的字符串作为该叶子结点的编码。可以证明,如此得到的必为二进制前缀编码。 3)赫夫曼编码 设计电文总长最短的二进制前缀编码即: 以 n种字符出现的频率作权,设计一棵赫夫曼树的问题,由此得到的二进制前缀编码称赫夫曼编码。 例:设通信用的电文由字符集{a,b,c,d,e,f,g,h}中的字母构成,这8个字母在电文中出现的概率分别为 { 0.07, 0.19, 0.02, 0.06, 0.32, 0.03, 0.21, 0.10 },试为这8个字母设计哈夫曼编码。 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11

文档评论(0)

1亿VIP精品文档

相关文档