LZ78编码解码字符流c语言,LZ编码实验报告.doc

北京邮电大学实验报告

题目:LZ78压缩编码与译码

专业:信息工程

小组成员(学号):

赵乙麟(2011210714)

周丽玲(2011210715)

马睿超(2011210691)

一、实验目的与任务

熟悉LZ编码的基本思想,运用LZ算法编写具体程序,实现文本的无损数据压缩与解压缩,明白其中字典建立的过程是整个编码的核心。

实验环境

MATLAB

三、实验流程

编码算法:

步骤1: 在开始时,词典和当前前缀P 都是空的。

步骤2: 当前字符Char :=字符流中的下一个字符。

步骤3: 判断P+Char是否在词典中:

(1) 如果"是":用Char扩展P,让P := P+Char ;

(2) 如果"否":

① 输出与当前前缀P相对应的码字和当前字符Char;

② 把字符串P+Char 添加到词典中。

③ 令P :=空值。

(3) 判断字符流中是否还有字符需要编码

① 如果"是":返回到步骤2。

② 如果"否":若当前前缀P不空,输出相应于当前前缀P的码字,结束编码。

流程图如下:

2、译码算法:

步骤1:在开始时词典为空;

步骤2:当前码字W:=

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值