赫夫曼树
来源:互联网 发布:淘宝网名昵称大全女生 编辑:程序博客网 时间:2024/06/07 06:30
1. 哈夫曼树的基本概念
哈夫曼树( Huffman )又称最优二叉树,是一类带权路径长度最短的树,有着广泛的应用。
在讨论哈夫曼树之前首先需要弄清楚关于路径和路径长度的概念。树中两个结点之间的路径由一个结点到另一结点的分支构成。两结点之间的路径长度是路径上分支的数目。树的路径长度是从根结点到每一个结点的路径长度之和。
设一棵二叉树有 n 个叶子结点,每个叶子结点拥有一个权值W 1 ,W 2 , ...... W n ,从根结点到每个叶子结点的路径长度分别为 L1 , L2......Ln ,那么树的带权路径长度为每个叶子的路径长度与该叶子权值乘积之各。通常记作 WPL = L k. W k 。为了直观其见,在图中把带权的叶子结点画成方形,其他非叶子结点仍为圆形。请看图 6.21 中的三棵二叉树以及它们的带权路径长。
(a) wpl=38 (b) wpl=49 (c) wpl=36
图 6.21 具有不同带权路径长度的二叉树
注意:
这三棵二叉树叶子结点数相同,它们的权值也相同,但是它们的 wpl 带权路径长各不相同。图 6.21(c)wpl 最小。它就是哈曼树,最优树。哈夫曼树是,在具有同一组权值的叶子结点的不同二叉树中,带权路径长度最短的树。也称最优树。
0 0
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- 赫夫曼树
- Nginx初步-4:在Raspberry Pi 上安装配置MongoDB
- How to install VirtualBox on Fedora 17 (64 bit)
- 解惑 spring 嵌套事务
- 解决myeclipse/eclipse创建或导入maven工程时引发的问题
- 项目的计划需要从定义交付物开始
- 赫夫曼树
- Java程序的运行机制和JVM
- 关于孙卫琴老师的TOMCAT与java bookstore中文乱码
- Nginx初步-5:用SWIG为PHP写个C++的扩展
- Nginx初步-6:使用CUDA为PHP加速
- android 加入log
- union all 排序问题
- CRM上线之路 走上了CRM实施顾问-第100天上班 -第21周
- 开发Java的准备