第5章树和二叉树-1精品.ppt

W={2,3,4,5} 哈夫曼树的构造过程 5.7 哈夫曼树及哈夫曼编码 重复第2步 重复第3步 5 5 4 9 3 2 5 5 4 9 3 2 14 哈夫曼算法的存储结构 1. 设置一个数组huffTree[2n-1]保存哈夫曼树中各点的信息,数组元素的结点结构 。 weight lchild rchild parent 其中:weight:权值域,保存该结点的权值; lchild:指针域,结点的左孩子结点在数组中的下标; rchild:指针域,结点的右孩子结点在数组中的下标; parent:指针域,该结点的双亲结点在数组中的下标。 struct element { int weight; int lchild, rchild, parent; }; 5.7 哈夫曼树及哈夫曼编码 伪代码 数组huffTree初始化,所有元素结点的双亲、左 右孩子都置为-1; 2. 数组huffTree的前n个元素的权值置给定值w[n]; 3. 进行n-1次合并 3.1 在二叉树集合中选取两个权值最小的根结点, 其下标分别为i1, i2; 3.2 将二叉树i1、i2合并为一棵新的二叉树k; 5.7 哈夫曼树及哈

文档评论(0)

1亿VIP精品文档

相关文档