设计一函数,对树进行初始。由于Huffman树的结点不会超过512,可以采用顺序存储结构,初始数组HuffTree[512]中所有元素包括以下信息: b(节点表示的字节):节点表示的字节值,初始可为’\0’。 count(权值):前面读文件时已统计,此处无需统计。 parent(父节点):此时哈夫曼树未建立,故设为-1。 lchild(左孩子):此时哈夫曼树未建立,故设为-1。 rchild(右孩子):此时哈夫曼树未建立,故设为-1。 bits数组(结点对应的哈夫曼编码):此时哈夫曼树并未建立,可不设置或bits[0]为’\0’。
时间: 2023-05-29 16:02:02 浏览: 97
void initHuffTree(HuffNode HuffTree[], int n) {
for (int i = 0; i < n; i++) {
HuffTree[i].b = '\0'; // 可以是任何字符
HuffTree[i].count = 0; // 权值在读文件时统计
HuffTree[i].parent = -1; // 初始根节点没有父节点,设为-1
HuffTree[i].lchild = -1; // 初始没有左右孩子,设为-1
HuffTree[i].rchild = -1;
HuffTree[i].bits[0] = '\0'; // 初始没有哈夫曼编码
}
}
阅读全文