数据结构—哈夫曼树

本文介绍了哈夫曼树的基本概念,包括路径、路径长度、结点的带权路径长度和树的带权路径长度。哈夫曼树是带权路径长度最小的二叉树,权值较大的叶子结点离根结点更近。文章详细阐述了哈夫曼树的构造过程,通过不断选择权值最小的两棵树合并,直至形成一棵树。此外,还讨论了哈夫曼树的存储方法和构造算法,包括初始化和创建树的步骤,并提供了代码实现。
摘要由CSDN通过智能技术生成

1.哈夫曼树的基本概念

  • 路径:从树中一个结点到另一个结点之间的分支构成这两个结点之间的路径。
  • 路径长度:路径上的分支数目称作路径长度
  • 树的路径长度:从树根到每一结点的路径长度之和。
  • :赋予某个实体的一个量,是对实体的某个或某些属性的数值化描述。在数据结构中实体有结点(元素)和边(关系)两大类,所以对应有结点权和边权。结点权或边权具体代表什么意义,由具体情况决定。如果在一棵树中的结点上带有权值,则对应的就有带权树等概念
  • 结点的带权路径长度:从该结点到树根之间的路径长度与结点上权的乘积。
  • 树的带权路径长度:树中所有叶子结点的带权路径长度之和,通常记
  • 权值分别为7,5,2,4,构造有4个叶子结点的二叉树:

  • 最后一棵树WPL最小,可以验证,它恰为哈夫曼树,即其带权路径长度在所有带权为7、5、2、4的4个叶子结点的二叉树中居最
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值