您的位置:首页 >精选知识 >正文

哈夫曼树(说一说哈夫曼树的简介)

摘要 夏弥来为大家解答以下的问题,哈夫曼树,说一说哈夫曼树的简介,现在让我们一起来看看吧!1、给定n个权值作为n个叶子结点,构造一棵二叉树

夏弥来为大家解答以下的问题,哈夫曼树,说一说哈夫曼树的简介,现在让我们一起来看看吧!

1、给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。

2、哈夫曼树也可以是k叉的,只是在构造k叉哈夫曼树时需要先进行一些调整。

3、构造哈夫曼树的思想是每次选k个权重最小的元素来合成一个新的元素,该元素权重为k个元素权重之和。

4、但是当k大于2时,按照这个步骤做下去可能到最后剩下的元素少于k个。

5、解决这个问题的办法是假设已经有了一棵哈夫曼树(且为一棵满k叉树),则可以计算出其叶节点数目为(k-1)nk+1,式子中的nk表示子节点数目为k的节点数目。

6、于是对给定的n个权值构造k叉哈夫曼树时,可以先考虑增加一些权值为0的叶子节点,使得叶子节点总数为(k-1)nk+1这种形式,然后再按照哈夫曼树的方法进行构造即可。

本文到此结束,希望对你有所帮助。

版权声明:本文由用户上传,如有侵权请联系删除!