">

">

有K个叶子结点的哈夫曼树,其结点的总数为( )

有K个叶子结点的哈夫曼树,其结点的总数为( )


【正确答案】:2K-1
【题目解析】:

哈夫曼算法是将当前n个叶结点的森林中的两棵根结点权值最小的二叉树合并成一棵新的二叉树,合并一次,森林中就减少一棵树,显然要进行n-1次合并才能使森林中的二叉树的数目由n棵减少到只剩下一棵最终的哈夫曼树,并且每次合并都要产生一个新结点。合并n-1次共产生n-1个新结点。 

由此可知:n个叶结点是初始森林中的n个结点,并且哈夫曼树中没有度数为1的分支结点,故最终求得的哈夫曼树中共有n-1+n=2n-1个结点。本题中n=K,故结点总数是2K-1。


Top