哈夫曼树的高

哈夫曼树的高 哈夫曼树最高为多少?

哈夫曼树最高为多少?

哈夫曼树最高为多少?

答:画出一个二叉树,可如下: o / \\ O o / \\ O o / \\ O o / \\ O O 这不是很明显的事吗?如果根的高度从0开始计,则该树树高为4,如果根的高度从1开始计,则该树高度为5。再怎么也不会是3啊。 什么是哈夫曼树 给定n个权值作为n个叶子结点,构造一棵二叉树,带权路径长度达到最小。带权路径长度最短的树,权值较大的结点离根较近 构造的方法 在森林中选出两个根结点的权值最小的树合并,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和; 我的结果 错误原因 构造过程没问题,只是最后左子树大于了右子树,所以错误了(因为这是规范,左子树权值要小于右子树)。

哈夫曼树最高为多少?

画出一个二叉树,可如下: o / \\ O o / \\ O o / \\ O o / \\ O O 这不是很明显的事吗?如果根的高度从0开始计,则该树树高为4,如果根的高度从1开始计,则该树高度为5。再怎么也不会是3啊。 什么是哈夫曼树 给定n个权值作为n个叶子结点,构造一棵二叉树,带权路径长度达到最小。带权路径长度最短的树,权值较大的结点离根较近 构造的方法 在森林中选出两个根结点的权值最小的树合并,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和; 我的结果 错误原因 构造过程没问题,只是最后左子树大于了右子树,所以错误了(因为这是规范,左子树权值要小于右子树)

具有10个结点的哈夫曼树最大高度为?

不会存在有10个结点的哈夫曼树。

从哈夫曼树的构造方法可以知道,假如最初有n个离散的带权结点用于构造哈夫曼树,从中选出两个权值最小的结点,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和 再将新树结点与其他离散结点比对,从中选出两个权值最小的结点,继续组成新树……如此把所有结点组合为一颗二叉树。每组合一次,会多出一个分支结点,到最后,最初的n个离散的带权结点都会成为哈夫曼树的叶子,而哈夫曼树的分支结点都是在构建的过程中不断添加的,分支结点的个数是n-1。哈夫曼树的结点总数则是n n-1=2n-1。

由上可知,哈夫曼树的结点总数2n-1是一个奇数。因此不会存在有10个结点的哈夫曼树,本题无解。