C语言《数据结构》——哈夫曼树

C语言《数据结构》——哈夫曼树,第1张

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录
  • 前言
  • 一、哈夫曼树是什么?
  • 二、哈夫曼树的构建
    • 1.WPL的计算:
    • 2.哈夫曼树
    • 2.构造哈夫曼树的原则
    • 3.构建哈夫曼树的过程
    • 2.哈夫曼编码
  • 总结


前言

哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫做Huffman编码(有时也称为霍夫曼编码)。


提示:以下是本篇文章正文内容,下面案例可供参考

一、哈夫曼树是什么?

设二叉树具有n个带权值的叶节点,那么从根节点到叶结点的路径长度与相应节点权值的乘积的和,叫做二叉树的

二、哈夫曼树的构建 1.WPL的计算:

代码如下(示例):

2.哈夫曼树

相同的叶节点可以构造出不同的二叉树

2.构造哈夫曼树的原则

(1).权值越大的根节点越靠近根节点。
(2).权值越小的根节点越远离根节点。

3.构建哈夫曼树的过程


该处使用的url网络请求的数据。

2.哈夫曼编码

哈夫曼编码特点:权值越大的字符编码越短,反之越长。


总结

在一组字符的哈夫曼编码中,不可能出现一个字符的哈夫曼编码是另一个字符哈夫曼编码的前缀。
例如:
100,001,0,1
就不是哈夫曼编码。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/713261.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-04-24
下一篇2022-04-24

发表评论

登录后才能评论

评论列表(0条)

    保存