哈夫曼树与哈夫曼编码

http://www.cnblogs.com/wuyuankun/p/3982216.html

哈夫曼树

  • 带权路径长度:树中所有的叶结点的权值乘上其到根结点的 路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。
  • 哈夫曼树是一种带权路径长度最短的二叉树。

哈夫曼编码

  • 希望整个编码最短,所以尽量使出现频率高的字符编码短,频率低的字符编码长。
  • 可以根据哈夫曼算法构造哈夫曼树T。设需要编码的上述电文字符集d={A,B,C,D},在电文中出现的频率集合p={4/10,1/10,3/10,2/10}
    我们以字符集中的字符作为叶子结点、频率作为权值,构造一棵哈夫曼树。 A的编码:0,C的编码:10,D的编码:110,B的编码:111.


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是哈夫曼树(Huffman Tree)eg:将百分制的考试成绩转换为五分制的成绩if ( score < 60...
    Spicy_Crayfish阅读 6,394评论 1 1
  • 【定义】带权路径长度(WPL):设二叉树有n个叶子节点,每个叶子节点带有权值Wk,从根节点到每个叶子节点的长度为L...
    日常表白结衣阅读 2,905评论 1 0
  • 普通树与二叉树的相互转化及哈夫曼树的了解 二叉树与普通树的转化 二叉树的种种特性使得它更便于处理,如果能将普通树转...
    sunhaiyu阅读 5,565评论 0 3
  • 对于我们的日常操作压缩文件来说,通常都是将文件中的字符转换成压缩后的格式,但为什么能够解压回来,那是因为压缩后的数...
    Forget_ever阅读 9,677评论 0 8
  • 定义指针变量,如果不赋给它地址,系统会随机给它分配一个地址。 C++标准库 C++ Standard Librar...
    纵我不往矣阅读 2,383评论 0 1