信息论编码课程设计_第1页
信息论编码课程设计_第2页
信息论编码课程设计_第3页
信息论编码课程设计_第4页
信息论编码课程设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2霍夫曼设计原理 44编码程序及其分析 参考文献 使用的数据用较长的代码代替,每个数据的代码各不相同。哈夫曼压缩是个无损的压缩算法,一般用来压缩文本和程序文件。哈夫曼压缩属于可变代码长度算法一族。意思是个体符号用一个特定长度的位序列替代。因此,在文件中出现频率高的符号,使用短的位序列,而那些很少出现的符号,则用较长的位序列。哈夫曼编码是哈夫曼树的一个应用,是一种最优的前缀技术,然而其存在的不足却制约了它的直接应用。首先,其解码时间为O(lavg),其中lavg为码字的平均长度;其次,更为重要的是,解码器需要知道哈夫曼编码树的结构,因而编码器必须为解码器保存或传输哈夫曼编码树。对于小量数据的压缩而言,这是很大的开销。因而,应用哈夫曼编码的关键是如何降低哈夫曼编码树的存储空间。目前流行的很多压缩方法都是用了该技术,如GZIB、ZLIB、PNC等。2霍夫曼设计原理同样用于VB,VJ,VID等VisualCL,是NMAKE,和其他许许多多命令行程序,这些我们看不到的程序才是构x2x3x4x5x6x7x)K12H(X)Rx1x2x3x4缩减信源s323012码字码长s412x5x6x7x80101222330210122104编码程序及其分析//**哈夫曼编码**{};//信源类型//信源符号//概率//编码结果//码长{};{{}{}//输入信息//排序//构造哈夫曼树//生成哈夫曼编码//结果分析//显示结果信息//释放资源空};//符号个数//平均码长//信息率//编码效率//哈夫曼树//输入信源信息{}{inti,j;{}}{inti;{}//(2基于链表,构造哈夫曼树intk;//树的层次{为二者之和strcpy(ptr4->Code,"");ptr4->LeftSubtree=NULL;ptr4->middleSubtree=ptr1;//最小的节点ptr1成为ptr4的“中”子树,将来赋予码元“1”予码元“0”{}}{予码元“2”予“1”赋予“0”{}}}{{{}}{}{}{}}{}//编码结果分析{for(intj=0;j<ISNumber;j++)//求信源熵}//显示结果{{}}//释放资源{{}}{}通过一周的课程设计使我对哈夫曼树以及哈夫曼编码有了更深的认识和理解,也使我更加明白哈夫曼编码译码在信息技术中的重要性和地位。于对文件不是太熟悉,只好翻开C语言书本仿照其模式编写。许多的错误让我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论