当前位置: 首页 > news >正文

哈夫曼树的定义?如何构造?

•    给定一组数值作为叶子结点的权值构造一棵二叉树,若满足所有叶子结点到根结点的带权路径长度之和最小,即为哈夫曼树
•    长度称为WPL带权路径长度

•    给定n个权值,构成n棵二叉树的集合
•    从集合中选出两棵根结点权值最小的二叉树,作为左右子树,构成新二叉树,权值为两子树根结点权值之和
•    放入集合,删除原来的两棵树
•    重复,直到集合只剩下一棵二叉树

•    统计文件中字符出现的次数
•    用(1)中的统计结果来构造haffman树
•    根据haffman树生成haffman编码
•    将源文件用对应的haffman 编码替换(源文件一共有10个字符,占10字节的内存,但是经过用haffman code替换之后,只占3个字节,这样就能达到压缩的目的)

•    按序将编码输入到哈夫曼树,到叶子结点还原
 


http://www.mrgr.cn/news/45990.html

相关文章:

  • 是德(Keysight)N9030A、N9030B PXA信号分析仪
  • 【Linux】五种IO模型
  • 大模型的安全机制
  • 从零开始:用Python编写自己的简单游戏
  • 大话C++:第15篇 友元
  • 如何使用Python连接和操作MySQL数据库?请提供示例代码。
  • 产品推介——施密特触发器光耦KLH11LX产品系列
  • 007集—— 自动获取图形的外边界(外轮廓)(CAD—C#二次开发入门)
  • 【AUTOSAR 基础软件】PduR模块详解(通信路由)
  • 小巧简单的JAVA字节码开源编辑器
  • 工业物联网关-功能概述
  • mount 挂载用法
  • ML 系列:机器学习和深度学习的深层次总结(14) — 逻辑回归(第 3 部分 — 实施)
  • 「软件设计哲学」于延保代码改造中的实践
  • Istio Pilot xDS Sidecar
  • tauri开发Mac电脑Safari浏览器一个很奇怪的问题:在 input 输入框输入的是全小写英文字母,会自动将首字母转换为大写解决办法
  • 离职后才知道的那些事儿
  • MySQL SQL 优化指南:主键、ORDER BY、GROUP BY 和 UPDATE 优化详解
  • stateflow一些数据依赖关系的使用
  • Ubuntu下v4l2采集摄像头视频