用C语言实现哈夫曼编码译码.docVIP

  • 28
  • 0
  • 约 5页
  • 2017-03-29 发布于北京
  • 举报
用C语言实现哈夫曼编码译码.doc

用C语言实现哈夫曼编码译码   摘 要 利用哈夫曼编码可缩短信息传输时间,提高信道利用率。本文分析了用C语言实现哈夫曼编码译码。   关键词 C语言 哈夫曼 编码 译码   中图分类号:TP313 文献标识码:A   0引言   当今时代信息高速发展,利用哈夫曼编码进行通信可提高信道利用率从而获得更大的利润。   1算法设计   1.1算法说明   哈夫曼树也称最优二叉树。给定一组具有确定权值的叶子结点,可以构造出不同的二叉树,二叉树的带权路径长度记为:WPL=∑Wklk,Wk为第k个叶子结点的权值,lk为从根结点到第k个叶子结点的路径长度。   1.2算法所需数据结构   表1:结点结构   其中:   Weight:权值;   L_child:左孩子结点信息;   R_child:右孩子结点信息;   Parent:双亲结点信息;   Name:姓名。   1.3算法流程   1.3.1编码   (1)初始化哈夫曼树;   (2)初始化结构体;   (3)输入叶子权值及名称;   (4)选取两个最小权值的叶子;   (5)创建哈夫曼树。   1.3.2译码   (1)找寻哈夫曼树根节点;   (2)遍历哈夫曼树: 1-右子树,0-左子树;   (3)判断是否走到叶子节点,若是,打印字符并回归根节点。   2算法程序

文档评论(0)

1亿VIP精品文档

相关文档