王琦

第四次作业

7、使用LZ77算法对一个序列进行编码。给定C(a)=1,C(p)=2,C(r)=4。对以下三元组序列进行解码:

<0,0,3> <0,0,1> <0,0,4> <2,8,2> <3,1,2> <0,0,3> <6,4,4> <9,5,4>

假定窗口的大小为20,先行缓冲区的大小为10。对解码所得到的序列进行编码,确保得到相同的三元组序列。

  答:

解码:C(a)=1,C(b)=2,C(r)=3,C(t)=4

序列 输出
<0,0,3> r
<0,0,1> ra
<0,0,4> rat
<2,8,2> ratatatatatb
<3,1,2> ratatatatatbab
<0,0,3> ratatatatatbabr
<6,4,4> ratatatatatbabratbat
<9,5,4> ratatatatatbabratbatbabrat

 

 

 

 

 

 

 

 

编码:

输入 输出
||ratatatatatbabratbatbabrat  <0,0,3>
|r|atatatatatbabratbatbabrat  <0,0,1>
|ra|tatatatatbabratbatbabrat  <0,0,4>
|rat|atatatatbabratbatbabrat   <2,8,2>
ra|tatatatatb|abratbatbabrat  <3,1,2>
rata|tatatatbab|ratbatbabrat   <0,0,3>
ratat|atatatbabr|atbatbabrat  <6,4,4>
ratatatata|tbabratbat|babrat   <9,5,4>

 

 

 

 

 

 

 

 

答:

接收序列为:4,5,3,1,2,8,2,7,9,7,4

索引
1  S
2  _(空格)
3  I
4  T
5  H
6  TH
7  HI
8  IS
9  S_ 
10  _IS
11  IS_
12  _H
13  HIS
14  S_H

 

 

 

 

 

 

 

 

 

 

 

 

则输出序列编码为:THIS IS HIS HIT

 

posted on 2015-09-25 10:19  王琦1  阅读(154)  评论(0编辑  收藏  举报

导航