您的位置首页百科知识

快速画出哈夫曼树/霍夫曼树/最优树

快速画出哈夫曼树/霍夫曼树/最优树

的有关信息介绍如下:

快速画出哈夫曼树/霍夫曼树/最优树

哈夫曼树(霍夫曼树)又称为最优二叉树.

一般用来减少程序整体运行时间,将权重大的放在前面。

下面我们以【5、8、4、11、9、13】为例来画出哈夫曼树(数字大小代码权重大小,越大的权重越大)

第一步:按从小到大排序。

【5、8、4、11、9、13】→【4、5、8、9、11、13】

第二步:选最小两个数画出一个树,最小数为4和5。

给定的4、5、8、9、11、13为白色, 红色的9为4+5,与给定的白9无关,新序列为:【红9(含子节点4、5)、8、9、11、13】

之后一直重复第一、第二步:排序然后取两个最小值。实际就是一个递归过程

排序:

取两个最小数8和9:

排序:

取两个最小数9和11:

排序,然后取两个最小数13和17:

取两个最小数20和30: