题目解析
本题主要是考察哈夫曼树的构建。
哈夫曼树定义:
给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。
比如题目用例给出的N个叶子节点的权值分别为:5 15 40 30 10
那么我们可以根据这些叶子节点任意构造一个二叉树,比如下图所示
那么这颗二叉树的各个叶子节点的带权路径长度如下:
5*3 + 15*3 + 40*3 + 30*3 + 10*1 = 280
因此这颗二叉树的带权路径长度 = 280 要比题目描述中构造的最优二叉树的205大。因此这种二叉树就不是哈夫曼树。
哈夫曼树是根据给定的n个