第四次作业

1、 参考书《数据压缩导论(第4版)》  Page 121 7,8

7.使用LZ77算法对一个序列进行编码。给定C(a)=1,C(b)=2,C(r)=3,C(t)=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.

所以,解码的过程如下:

1. <0,0,3>的解码为r;

2. <0,0,1>的解码为ra;

3. <0,0,4>的解码为rat;

4. <2,8,2>的解码为ratatatatb;

5. <3,1,2>的解码为ratatatatbab;

6. <0,0,3>的解码为ratatatatbabr;

7. <6,4,4>的解码为ratatatatbabratbat;

8. <9,5,4>的解码为ratatatatbabratbatbabrat

根据以上的结果ratatatatbabratbatbabrat,则解码的过程为:

序列

输出

<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

8.给定一下初始词典和接受序列,构建一个LZW词典,并对所发送的序列进行解码。

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

初始词典:

索引
1 S
2 _空格
3 I
4 T
5 H

(1)输入4,则编码的序列为:T  P=T

索引
1 S
2 _空格
3 I
4 T
5 H

(2)输入5,则编码的序列为:TH  P=TH

索引
1 S
2 _空格
3 I
4 T
5 H

(3)输入3,则编码的序列为:THI  P=HI

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH

(4)输入1,则编码的序列为:THIS  P=IS  

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI

(5)输入2,则编码的序列为:THIS_  P=S_

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI

8

IS

(6)输入8,则编码的序列为:THIS_IS  P=_IS

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 _IS

(7)输入2,则编码的序列为:THIS_IS_  P=IS_

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 _IS

9 S_

(8)输入7,则编码的序列为:THIS_IS_HI  P=_HI

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 IS

9 S_
10 _HI

(9)输入9,则编码的序列为:THIS_IS_HIS_  P=HIS_

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 IS

9 S_
10 _HI

11 HIS_

(10)输入7,则编码的序列为:THIS_IS_HIS_ HI P=S_HI

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 IS

9 S_
10 _HI

11 HIS_

12 S_HI

(11)输入4,则编码的序列为:THIS_IS_HIS_ HIT P=HIT

索引
1 S
2 _空格
3 I
4 T
5 H

6 TH
7 HI
8 IS

9 S_
10 _HI

11 HIS_

12 S_HI

13 HIT

所以输出的结果为:

THIS

IS

HIS

HIT

原文地址:https://www.cnblogs.com/yuanlumin/p/4837407.html