构造哈夫曼树c++严蔚敏
时间: 2023-08-17 21:12:52 浏览: 157
根据引用[1],构造哈夫曼树的函数是CreateHuffmanCodeByHuffmanTree,它的参数包括HuffmanTree HT(哈夫曼树)、HuffmanCode &HC(哈夫曼编码)和n(叶子结点的个数)。这个函数的作用是从叶子到根,逆向求每个字符的哈夫曼编码。
根据引用[2],一棵有n个叶子结点的哈夫曼树共有2n-1个结点,可以将其存储在一个大小为2n-1的数组中。数组的0号单元为空,所以数组的大小为2n。哈夫曼树的存储表示包括每个结点的权值、双亲及左右孩子的下标。
根据引用[3],HuffmanNode是一个结构体,用于定义哈夫曼树的结点。这个结构体包括权重(weight)、双亲(p)以及左右孩子(lc和rc)的下标。
综上所述,构造哈夫曼树的过程需要使用CreateHuffmanCodeByHuffmanTree函数,并且需要定义HuffmanTree和HuffmanNode结构体来存储哈夫曼树的信息。关于严蔚敏,他是计算机科学与技术领域的专家,著有《数据结构》等经典教材。
阅读全文