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

哈夫曼编码例题

某电文中由A、B、C、D、E、F、G共7个字母组成,使用的频度分别0.1、0.05、0.25、0.15、0.1、0.2、0.15。

(1)构造哈夫曼树。

哈夫曼树.drawio.png

(2)列表写出操作码的等长编码、哈夫曼编码和只用两种最短码长的扩展编码。

操作码 频度 等长编码 哈夫曼编码 扩展编码
A 0.1 000 1000 1110
B 0.05 001 1001 1111
C 0.25 010 01 00
D 0.15 011 000 1100
E 0.1 100 101 1101
F 0.2 101 11 01
G 0.15 110 001 10

(3)分别计算等长编码、哈夫曼编码、扩展编码的平均码长。

等长编码长度:3

哈夫曼编码平均长度:$ (0.1 + 0.05) \times 4 + (0.15 + 0.1 + 0.15) \times 3 + (0.25 + 0.2) \times 2 = 2.7 $

扩展码平均长度:$ (0.1 + 0.05 + 0.15 + 0.1) \times 4 + (0.25 + 0.2 + 0.15) \times 2 = 2.8 $

http://www.zskr.cn/news/13397.html

相关文章:

  • Win11共享打印0x0000bc4,三步解决共享难题
  • Atlas Mapper 教程系列 (7/10):单元测试与集成测试 - 教程
  • 【WCH蓝牙系列芯片】-基于CH585开发板—IO口(GPIO)外部中断唤醒蓝牙睡眠模式
  • DevExpress WinForms v25.2新功能预览 - 即将升级富文本编辑器控件功能
  • redis-事务操作
  • 【Linux基础知识系列:第一百四十篇】理解SELinux与系统安全 - 教程
  • 关于修改 linux 系统中优先使用中文结构
  • 中国DevOps平台竞品分析:安全合规与技术生态的双重较量
  • experiment 1
  • Prometheus源码专题【左扬精讲】—— 监控系统 Prometheus 3.4.0 源码解析:head_wal.go 的 WAL 写入策略与缓存管理源码解读
  • Tomcat中启用h3的方法是什么
  • k8s-Namespace
  • 分布式专题——23 Kafka日志索引详解 - 指南
  • Agent的九种设计模式 - 详解
  • python占用指定比例CPU
  • 6 个替代 Microsoft Access 的开源数据库工具推荐
  • MCU的闪存(FLASH)按机制结构划分区域
  • 题解:CF1930I Counting Is Fun
  • K8S-Service 学习
  • 第05周 预习、实验与作业:继承与多态
  • 深入解析:ShardingSphere 与分库分表:分布式数据库中间件实战指南
  • electron38-admin桌面端后台|Electron38+Vue3+ElementPlus管理系统
  • 长江中游干流河道崩岸特征与机理研究综述
  • 基于 Python Keras 建立 猫狗图像的精准分类
  • 《ESP32-S3使用指南—IDF版 V1.6》第四十章 图片显示实验
  • 完整的GLFW应用程序示例
  • HTML5-和-CSS3-迁移即时入门-全-
  • HTML5-地理位置即时操作指南-全-
  • [Kernel] - Heterogeneous Memory Management (HMM)
  • linux防火墙firewalld