首页 > 知识点讲解
       哈夫曼树的建立和哈夫曼编码的构造
知识路径: > 计算机科学基础 > 常用数据结构 > 树 > 树和二叉树 > 
被考次数:4次     被考频率:中频率     总体答错率:51%     知识难度系数:     
考试要求:掌握      相关知识点:11个      
        1)哈夫曼树的基本概念
        .路径:由从树中一个节点到另一个节点之间的分支构成两节点之间的路径。
        .路径长度:路径上的分支数目。
        .树的路径长度:从树根到每一个节点的路径长度之和。
        .节点的带权路径长度:从节点到根之间的路径长度与节点上权的乘积WkLk
        .树的带权路径长度:树中所有带权叶子节点的路径长度之和。
        .哈夫曼树:假设有n个数值{W1W2,…,Wn},试构造一棵有n个叶子节点的二叉树,节点带权为W1,带权路径长度WPL最小的二叉树称哈夫曼树。
        下图给定的两棵二叉树,它们的带权路径长度分别为:
        
        二叉树
        (1)WPL=7*2+5*2+2*2+4*2=36。
        (2)WPL=7*1+5*2+2*3+4*3=35。
        2)哈夫曼树的构造
        哈夫曼树的构造算法如下。
        (1)根据给定的n个数值{W1,W2, …,Wn}构成n棵二叉树的集合F={T1,T2, …,Tn},其中每棵二叉树Ti中只有一个带权为Wi的根节点,左右子树均空。
        (2)在F中选取两棵根节点的数值最小的树作为左右子树构造一棵新的二叉树,且置新的二叉树的根节点的数值为其左右子树上根节点的数值之和。
        (3)在F中删除这两棵树,同时将新得到的二叉树加入F中。
        (4)重复步骤(2)、(3),直到F只含一棵树为止。
        3)哈夫曼编码
        哈夫曼编码的设计思想是:若要设计长短不等的编码,则必须是任一个字符的编码都不是另一个字符的编码的前缀,这种编码称作前缀编码。利用二叉树来设计二进制的前缀编码,设计长度最短的二进制前缀编码,以n种字符出现的频率作为权,由此得到的二进制前缀编码为哈夫曼编码。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2021年下半年
   程序员
   上午试卷 综合知识
第40题
选择题
设需要构造哈夫曼树为四个字符进行编码,则不可能得到的编码方案是()。

44%
   2019年上半年
   程序员
   上午试卷 综合知识
第38题
选择题
根据权值集合{0.30, 0.25, 0.25, 0.12, 0.08}构造的哈夫曼树中,每个权值对应哈夫曼树中的一个叶结点,( )。

65%
>>  更多  本知识点历年真题
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有