哈夫曼平均码长

🔐 Huffman Average Code Length

Estimate the average code length and compression efficiency from symbol frequencies per Huffman coding.

📐 计算公式与说明

平均码长 = Σ(fᵢ / Σf) · lᵢ
理论下界为信息熵 H

输入频率(或概率,归一化后结果一致)。

📚 深度解析:哈夫曼平均码长

💡 常见使用场景

示例:A:0.5 B:0.25 C:0.25
哈夫曼码 A=0,B=10,C=11,平均码长=0.5×1+0.25×2+0.25×2=1.5 bit/符号(熵=1.5,已达最优)。

❓ 常见问题(FAQ)

哈夫曼为何最优?
在满足前缀码条件下使平均码长最小,等于信息熵(概率取 2 的幂时)。
与算术编码区别?
算术编码可超越符号边界、更接近熵,哈夫曼实现简单但略有冗余。
频率未知怎么办?
需先统计或使用通用模型,动态场景可用自适应哈夫曼。