GESP 六级 · GESP 202509 C++ 六级 第 17 题

判断题 · 答案 B

← 整套速查表 GESP 六级 全部真题

题目

哈夫曼编码是最优前缀码,且编码结果唯一。

答案:B

解题思维

哈夫曼编码:每次合并权值最小的两个节点,构建最优二叉树,使带权路径长度(WPL)最小。用于数据压缩。

常见错误

审题时注意题目要求(选正确还是选错误),避免因审题不清失分。涉及代码的题目要逐行分析变量变化。

详细解析(节选)

【考点】哈夫曼编码|最优前缀码|编码唯一性

1. 🎯 考纲定位:本题卡住的是"哈夫曼编码=唯一前缀码"的直觉误区。命题人把"最优前缀码"和"唯一性"两个概念硬捆绑,专治只背结论不推敲细节的考生。在 GESP 六级信息论模块里,这题就是用来筛掉那些"知道哈夫曼是最优的,但以为哈夫曼就是唯一最优"的半桶水选手。

2. 🧠 解题思维:看到"哈夫曼编码"先想三个约束:符号频次给定、编码必须是前缀码、平均长度要最小。再想"唯一"的陷阱——哈夫曼算法确实能构造出一个最优前缀码,但同一套频次下可能画出多棵不等价的哈夫曼树(只要频次相同的子树左右子节点交换,编码就全变了)。所以"最优"是存在的,"唯一"是假的。

3. 🪤 陷阱拆解:A 选项"正确"是典型"只记最优不记非唯一"的陷阱。命题人把"唯一"这个词放在题干里,就是利用学生"哈夫曼树是唯一的"这个常见误判。仔细想一下:频次相同的子树交换左右,得到的编码集合完全不一样,但都满足最优前缀码的定义。如果你只背结论、不理解本质,就会掉进这个"唯一性"的坑里。

4. 🔄 反命题思维:命题人如果把"唯一"改成"存在",问"哈夫曼编码是否一定存在最优前缀码",答案就翻盘了;或者改问"给定频次,哈夫曼编码结果是否确定",答案仍是"不一定"。下次刷到类似题,先问自己"命题人想考我什么",别被"最优"两个字带跑。

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断