[算法设计与分析入门]贪心算法之哈夫曼编码问题

问题概述1 二进制编码:用二进制字符0-1串来表示2 固定长编码:每个0-1串的长度是固定的3 可变长编码:常用短,不常用长4 前缀编码:没有任何字符的编码是其他字符的前缀这里需要使用树型结构.使用字符出现的频率和字符来作为结点的内容[字符:频率]这里给出一个例子:[a:45],[b:13],[c,12],[d:16],[e:9],[f:5]我们引入树T的代价设dT(c)d...
摘要由CSDN通过智能技术生成

问题概述

1 二进制编码:用二进制字符0-1串来表示
2 固定长编码:每个0-1串的长度是固定的
3 可变长编码:常用短,不常用长
4 前缀编码:没有任何字符的编码是其他字符的前缀

这里需要使用型结构.
使用字符出现的频率和字符来作为结点的内容[字符:频率]

这里给出一个例子:
[a:45],[b:13],[c,12],[d:16],[e:9],[f:5]

我们引入树T的代价
d T ( c ) d_T(c) dT(c)是符号c在树T的深度,即c的编码长度
f ( c ) f(c) f(c)是符号c出现的频率,在结点中保存
则T的代价是编码一个文件的所有字符的代码位数
B ( T ) = ∑ c f ( c ) ∗ d T ( c ) B(T)&

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值