哈夫曼树(贪心思想)

哈夫曼树

  • 贪心思想
  • 压缩编码的方法

用于构造路径权值总和最小的二叉树,解决数据传输的最优化问题

原理: 每次选择值最小的两个点合成新的树(贪心思想),将全部结点都合并,最终得出来的树就是权值和最小的二叉树

操作要点:

  1. 结点数值左小右大
  2. 先将所有结点值从小到大排序
  3. 每次选择值最小的两个结点,合并成一棵新的二叉树,根结点的值为两个结点相加
  4. 根结点作为新结点重新进入序列排序,与其他未合并的结点一起,重新组合

举个例子:在这里插入图片描述
同值异构(与化学的同分异构体不同): 若构建的树长得不一样,但是各点权值和相同,则可以任意选择一种结构,不影响最终的结果,而化学的不同的同分异构体是会影响化学性质的

在电报中怎么实现编码?
每个字符作为结点,将每个字符出现的频率作为结点权值,以这个构建一棵哈夫曼树,每棵子树左分支为0,右分支为1,从根结点到叶子结点经过的路径分支组成的01序列就是对应字符的编码

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值