算法:最优二叉树(赫夫曼树)
2023-02-02 15:35 huoit 阅读(556) 评论(0) 收藏 举报概念
最优二叉树就是带权路径最小的树;
带权路径值(WPL)=权值1*路径长度1+……
示例:如果字符出现频率如下;45,13,12,16,9,5 就是权值;

最优二叉树的构造过程
1. 先从中取最小权值的2个(5,9)组成一个树;(左小右大):如下

2.再从最新的序列: 45,13,12,16,14选择最小的两个(12,13)组成树:如下

3.再从最新的序列:45,16,14,25取最小的两个(14,16)组成树:

4.再从45,25,30选择最小的两个(25,30)组成树,直到剩余最后两个,最终如下:

路径长度
a的路径长度就是1,c,b,d的路径长度就是3,e,f的路径长度就是4
编码寻址
就是读取编码,按左0右1 寻址,直到寻到叶子节点:
序列“110001001101”编码应该为face
1、如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!
2、欢迎各位转载,但是未经作者本人同意,转载文章请在文章页面明显位置标明作者和原文连接,否则保留追究法律责任的权利。
作者博客: http://www.cnblogs.com/xmai/
浙公网安备 33010602011771号