7.使用LZ77算法对一个序列进行编码。给定C(a)=1,C(b)=2,C(r)=3,C(t)=5.对以下三元组序列解码:
<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。对解码所得的序列进编码,确保得到相同的三元组序列。
解:(1)由于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 |
(2)ratatatatatbabratbatbabrat t
解:
由于接收序列为:4,5,3,1,2,8,2,7,9,7,4;
所以输入序列为:4,5,3,1,2,8,2,7,9,7,4
索引 条目
1 S
2 *(空格)
3 I
4 T
5 H
解码序列为T。
以此类推。解码的序列为:THIS IS HIS HIT