上传者: 38743602
|
上传时间: 2022-12-13 04:12:51
|
文件大小: 269KB
|
文件类型: PDF
Python实现霍夫曼树
霍夫曼树是一种特殊的二叉树,是一种带权路径长度最短的二叉树,又称为最优二叉树。
给定 N 个权值作为二叉树的 N 个叶节点的权值,构造一棵二叉树,若该二叉树的带权路径长度达到最小,则称该二叉树为霍夫曼树。
霍夫曼树中权值越大的节点离根越近。
霍夫曼树主要应用于信息编码和数据压缩领域,是现代压缩算法的基础。
一、霍夫曼树的相关术语
霍夫曼树要满足带权路径长度最小,那就要知道什么是权值?什么是路径?什么是带权路径长度?
1. 路径
在一棵树中,从一个节点往下可以到达子节点或子孙节点的通路,称为路径。
2. 节点的权值
在具体的应用场景中,二叉树的每个节点对应着具体的业务