鱼C论坛

 找回密码
 立即注册
查看: 229|回复: 80

[技术交流] [参与有奖]给你一串编码,你有什么办法把他压到最短?【哈夫曼编码】

[复制链接]
发表于 2026-10-2 18:16:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 高山 于 2026-10-3 17:03 编辑


>>>如果你看不懂,推荐视频

*仅做优秀视频推荐,本版与该作者无任何利益关系。
给你一串编码

现在你要开始压缩它了
磁盘就那么点大,带宽就那么点贵

问:你要把它压到最短为止

你有多少种编码的方案呢?具体怎么编呢?
在评论区回复本问题可获得鱼币+5 荣誉+5 数量有限

(强烈建议所有鱼油先自己拿纸笔编一编,再看答案)

fig01_intro.png

【图 1】01 比特流穿过 Huffman 漏斗


各位鱼油大家好,今天这帖不灌水,咱们聊一个学数据结构的人谁都绕不开的东西——哈夫曼编码。

先别急着翻教材,咱们玩个游戏。

有一句话,ABRACADABRA(就是魔术师念的那句咒语),一共 11 个字母。要把它塞进计算机里:

最笨的办法,每个字母 8 个比特,11 × 8 = 88 个比特,这谁都知道是浪费;好一点的,这句话只用到 5 种字母,3 个比特就能区分 8 种符号,11 × 3 = 33 个比特。

还能再少吗?能,而且能压到 23 个比特。

更狠的是,有人从数学上证明了:这 11 个字母最少也得要 22.44 个比特(这个值叫熵,后面会讲)。也就是说 23 个比特几乎是贴着天花板走的,再压就是违反物理定律了。

这中间的魔法,是一个 1952 年、25 岁的博士生,在一篇只有四页纸的论文里给出的。

点评

大家有自己的思考欢迎发到「回帖」中,有奖励哦~  发表于 2026-10-2 18:23

评分

参与人数 5荣誉 +36 鱼币 +32 贡献 +31 C币 +20 收起 理由
魔女库伊拉 + 3 + 3 鱼C有你更精彩^_^
~风介~ + 5 + 3 + 5 这波必须支持一下!
梦想护卫舰官方 + 2 鱼C有你更精彩^_^
小甲鱼的二师兄 + 6 + 6 + 6 这波必须支持一下!
小甲鱼 + 20 + 20 + 20 + 20 知识偷偷进入了脑子……

查看全部评分

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2026-10-2 18:22:41 | 显示全部楼层
运行截图.png
结果康这个↑
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-10-2 18:38:39 | 显示全部楼层
@小甲鱼 @小甲鱼的二师兄 来康康我滴帖子!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2026-10-2 20:59:19 | 显示全部楼层

回帖奖励 +6 鱼币

每个字符是一个叶子,顺着树杈找到叶子对吧

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
高山 + 5 + 5 + 5 这个观点好,必须安排!

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-10-2 21:04:33 | 显示全部楼层
丫丫的雅雅 发表于 2026-10-2 20:59
每个字符是一个叶子,顺着树杈找到叶子对吧

是滴,例如左0右1,就能对应唯一的子叶节点啦~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-10-2 22:53:11 | 显示全部楼层

回帖奖励 +6 鱼币

这个排版真的绝了!

我要好好向你学习!!

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
高山 + 5 + 5 + 5 来自鱼油的肯定,请查收~

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-10-2 22:57:36 | 显示全部楼层
小甲鱼的二师兄 发表于 2026-10-2 22:53
这个排版真的绝了!

我要好好向你学习!!

哈哈哈谢谢,可以让AI给你一个排版规划,甚至直接生成discuz代码,会简单一些~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-10-3 14:58:46 | 显示全部楼层

回帖奖励 +6 鱼币

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-10-3 15:02:34 | 显示全部楼层

回帖奖励 +6 鱼币

不会
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-10-3 17:02:44 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

删掉
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层
厉害了我的哥有学到
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层
不会
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

学到了学习啦
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

这是论文啊我嘞个豆
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

哇,太棒了,本来看课看的都看不懂了,现在还得看这个然后还让答题!?我不会

点评

可以看一下开头附上的视频奥!也能讲清楚的~  发表于 7 天前
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

顺着树杈
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层

回帖奖励 +6 鱼币

我表示看不懂唉
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
学习数据结构,确实绕不开哈夫曼编码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 From FishC Mobile | 显示全部楼层
哈夫曼编码,哈夫曼树,数据结构学过
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-10-11 00:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表